GruntJS如何将obect参数传递给grunt.task.run()

时间:2013-10-17 06:36:15

标签: javascript node.js config gruntjs

当我只将字符串传递给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并且配置非常不同?

0 个答案:

没有答案