gpt4 book ai didi

javascript - 如何在其他任务中从 grunt-prompt 访问用户输入

转载 作者:行者123 更新时间:2023-11-30 10:02:49 25 4
gpt4 key购买 nike

我需要编写一个 grunt 作业来使用 grunt-prompt 读取用户输入,然后创建一个具有该名称的目录。我正在尝试使用配置访问另一个 grunt 任务中的变量,该任务将在 grunt-prompt 之后执行。但是以下所有方法都给出了未定义的。

我试过:

grunt.config('config.database')
grunt.config('database')
grunt.config('target.config.database')

请指教。这是我的完整脚本:

module.exports = function(grunt) {

grunt.initConfig({

prompt: {
target: {
options: {
questions: [
{
config: 'directory',
type: 'input',
message: 'Enter direcotry Name',
validate: function(value){
if(value == '') {
return 'Should not be blank';
}
return true;
}
}
]
}
},
},

mkdir: {
all: {
options: {
mode: 0777,
create: [
grunt.config('config.directory')
]
}
}
}

});

grunt.loadNpmTasks('grunt-mkdir');
grunt.loadNpmTasks('grunt-prompt');

grunt.registerTask('default', 'prompt:target', 'mkdir']);
};

最佳答案

配置键是directory .

但是您的问题是您对 grunt.config() 的调用是在读取 Gruntfile 时执行的,远远早于任务运行。那时,prompt尚未运行,因此该选项未定义。

你想要只在运行时计算的东西,所以使用模板字符串 '<%= directory %>'而不是 grunt.config('directory')

mkdir: {
all: {
options: {
mode: 0777,
create: ['<%= directory %>']
}
}
}

关于javascript - 如何在其他任务中从 grunt-prompt 访问用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30709094/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com