我正在使用jade.compileClient
将jade文件转换为JS函数,并且在使用转义的html时出现问题。
在玉中我写道:
h2= conditional ? 'String1 ' + moreText : otherCondition ? 'String2' : 'String3'
它被转换为:
function template(locals) {
var buf = [];
var jade_mixins = {};
var jade_interp;
buf.push("<h2>" + (jade.escape(null == (jade_interp = conditional ? 'String1 ' + moreText : otherCondition ? 'String2' : 'String3') ? "" : jade_interp)) + "</h2>");
// [more code, beside the point]
好像很棒!唯一的问题是jade
对象不存在(至少在我的代码中),并且如您所见,转换后的函数调用jade.escape
(以及其他一些函数,如jade.attr
,在其他情况下)。
我怎样才能让它发挥作用?我必须包括哪些东西,我不知道?
提前致谢。
答案 0 :(得分:0)
使用jade/runtime
:
var jade = require('jade/runtime');
var html = fs.readFileSync(filename);
var fn = jade.compileClient(html, { filename: filename });
fn(locals);
您也可以从this link下载。