我有两个加载的文件,如下所示。我想在properties.js中按名称动态加载设置文件。我想替换<%= settings [“build.target.environment”]%>使用来自环境构建选项的值。每当我尝试替换值时,我会在grunt中获得编译错误。基本上,无法加载任务,因为没有正确加载任务,所以找不到X任务。我有一个名为init的别名,它按顺序运行这两个项目。如何将构建选项放入属性文件中,以便我可以动态加载我想要加载的配置。或者还有其他选择吗?看起来我的构建选项在这些文件加载时不会被选中。
请忍受我和任何对咕噜声的愚昧无知,对咕噜声相对较新。
properties.js:
module.exports = {
settings: 'config/build.properties',
instance: 'config/environment.<%= settings["build.target.environment"] %>.properties'
}
buildoptions.js:
module.exports = function(grunt) {
grunt.registerTask('buildoptions', 'set build version and repo branch', function() {
var build = grunt.option("build");
var branch = grunt.option("branch") || '';
var environment = grunt.option("environment");
grunt.config('build', build);
grunt.config('branch', branch);
grunt.config('environment', environment)
});
};
aliases.json:
"init": [
"buildoptions",
"properties"
]
答案 0 :(得分:0)
您不需要设置局部变量来访问模板字符串中的grunt.option
值,而是直接引用它:
module.exports = {
settings: 'config/build.properties',
instance: "config/environment.<%= grunt.option('environment') %>.properties"
}