当我只将字符串传递给 grunt.task.run() 时,我遇到了一些问题,它将按如下方式工作
grunt.registerTask('buildAll', function() {
['url-1', 'url-2'].forEach(function(config) {
grunt.task.run('updateConfig:'+ config, 'requirejs');
});
});
grunt.registerTask('updateConfig', function(config) {
// console.log(config);
grunt.config('requirejs.compile.options.baseUrl', config);
// console.log(grunt.config('requirejs.compile.options'));
});
但是当我传递像 {name:'a', baseUrl: 'path2'} 这样的对象时,将取消定义代码,如下所示:
grunt.registerTask('buildAll', function() {
[{name:'main-1', baseUrl:'./path1/'}, {name:'main-2', baseUrl:'./path2/'}].forEach(function(config) {
grunt.task.run('updateConfig:'+ config, 'requirejs');
});
});
grunt.registerTask('updateConfig', function(config) {
// console.log(config);
grunt.config('requirejs.compile.options.baseUrl', config.baseUrl);
grunt.config('requirejs.compile.options.name', config.name);
// console.log(grunt.config('requirejs.compile.options'));
});
任何解决方案。我需要为一个项目构建 mutlpile requirejs main 并且配置非常不同?