0

在我的选择中,我在 jshint 的 grunt 任务中定义了一个记者和记者输出。但我想从相同的数据中写出两个文件。jshint 是否可以使用这些选项,或者我只需要定义 2 个执行相同操作但输出相同结果的不同格式的 grunt 任务?

我也想对 jscs 输出做同样的事情。

4

1 回答 1

1

在您的自定义报告器中,为了创建输出文件,您只需返回以下代码:

process.stdout.write(reportHtmlJS);

让我们假设reporterHTMLJS 是您的自定义HTML 输出。在此之前您可以做的就是在 JSHint 或 JSCS 模块创建它之前使用该 HTML 并创建第二个文件。类似的东西:

fs = require('fs');
fs.writeFile("./jshint/secondJSHintReport.html", reportHtmlJS, function (err) {
    if (err) {
        console.log(err);
    }
});

您还可以使用一些 Grunt 模块,例如grunt-contrib-copygrunt-contrib-rename,并创建新的 grunt 任务,该任务将首先执行 jshint/jscs 然后复制文件并重命名它。

grunt.task.run("jshint copy:jshint rename:jshint");
grunt.task.run("jscs copy:jscs rename:jscs");
于 2016-03-30T12:15:46.557 回答