Javascript 动态更新Grunt配置字段
我在单独的目录中有几个项目,希望以相同的方式构建它们。 我想从任务中定义项目名称(作为参数)。Grunt任务将使用此项目路径作为根路径。但我有几个子文件夹,不想手动更新,我只想更新项目。有机会吗Javascript 动态更新Grunt配置字段,javascript,node.js,gruntjs,Javascript,Node.js,Gruntjs,我在单独的目录中有几个项目,希望以相同的方式构建它们。 我想从任务中定义项目名称(作为参数)。Grunt任务将使用此项目路径作为根路径。但我有几个子文件夹,不想手动更新,我只想更新项目。有机会吗 grunt.initConfig({ paths : { project : null, projectStylesheets : '<%= paths.project %>/stylesheets', // ... } }); grunt.regis
grunt.initConfig({
paths : {
project : null,
projectStylesheets : '<%= paths.project %>/stylesheets',
// ...
}
});
grunt.registerTask('server', function(project) {
// -> project = 'some_name'
var paths = grunt.config.get('paths');
paths.project = project;
grunt.config.set('paths', paths);
// -> { project: 'some_name', projectAssets: 'stylesheets' }
});
grunt.initConfig({
路径:{
项目:空,
项目样式表:'/stylesheets',
// ...
}
});
grunt.registerTask('server',函数(项目){
//->project='some_name'
var path=grunt.config.get('path');
path.project=项目;
grunt.config.set('path',path);
//->{project:'some_name',projectAssets:'stylesheets'}
});
我正在考虑在配置之外使用JS函数,但不确定这是否是最佳做法。尝试使用registermultitask-
可能想结帐这个项目:这不是我要找的,但谢谢:)我认为它很好。grunt usemin也是使用动态配置,但不是参数,它是像您一样编写的。参考
grunt.initConfig({
projectName1 : {
projectStylesheets: 'path_to_stylesheets1',
},
projectName2 : {
projectStylesheets: 'path_to_stylesheets2',
}
})
grunt.registerMultiTask('server', function() {
var path = grunt.data.projectStylesheets;
//operations with stylesheets
});
For build use
grunt server:projectName1
grunt server:projectName2