目前我正在为 intern.js 定制 html 记者。我使用的模板引擎是 marko.js。marko.js 有带有“.marko”的扩展文件供我输入我的 html 语法该文件在普通 node.js (common.js) 中正确生成
当我将相同的代码集成到 intern.js 时出现问题。当我这样做时,internjs 使用的 requirejs(AMD) 会自动将 .js 文件扩展名添加到我的 marko 扩展名中
var template = require('./hello-world.marko');
这使文件成为hello-world.marko.js
,这导致markojs中的代码中断
自定义 html 报告器代码如下
define(function (require) {
// require('intern/dojo/node!marko/node-require').install();
var fs = require('intern/dojo/node!fs');
var template = require('./hello-world.marko');
console.log(template);
function JsonReporter(config) {
config = config || {};
this.output = config.output;
}
JsonReporter.prototype = {
runEnd(executor) {
// console.log("toJson: " + JSON.stringify(executor.suites))
data = JSON.stringify(executor.suites);
template.renderToString(data,
function (err, output) {
console.log(output);
fs.writeFile('result.html', output, function (err) {
if (err) return console.log(err);
console.log('Save done');
});
});
},
}
return JsonReporter;
})