咕unt:从另一个的参数中覆盖任务的属性



html-build',我正在尝试通过我创建的自定义任务传递其配置的自定义属性。

这是我当前的代码:

grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        htmlbuild: {
            dist: {
              src: 'template.html',
              dest: 'tests/',
              options: {
                    beautify: true,
                    scripts: {
                        mocha: [
                          'assets/scripts/mocha/mocha.min.js',
                          'assets/scripts/mocha/chai.min.js',
                        ]
                    },
                    styles: {
                        mocha: [ 
                            'assets/css/mocha.min.css'
                        ]
                    }
                }
            }
        }
    });

grunt.registerTask('js-test', 'Generate JS test', function(scripts, tests) {
        var htmlBuildScripts = grunt.config.get('htmlbuild.dist.options.scripts');
        htmlBuildScripts.scripts = [scripts];
        htmlBuildScripts.tests = [tests];
        grunt.config.set(htmlBuildScripts, htmlBuildScripts);
        grunt.task.run('htmlbuild');
    });

现在当我在CMD中运行时 js-test:assets/scripts/graphicUnitsConvert.js:assets/tests/graphicUnitsConvertTest.js

我得到此警告Warning: str.replace is not a function

我找到了答案

grunt.registerTask('js-test', 'Generate JS test', function(scripts, tests) {
        grunt.config.set('htmlbuild.dist.options.scripts.scripts', [scripts.toString()]);
        grunt.config.set('htmlbuild.dist.options.scripts.tests', [tests.toString()]);
        grunt.task.run('htmlbuild');        
    });

最新更新