Jade.compileFile(layout, { pretty: false })(locals);
有人可以解释一下这段代码吗?
我知道此代码行使用Jade Template Engine方法compileFile
。 layout
是源路径,pretty
是传递给compileFile
的选项。 locals
是一个对象。
这个函数被调用两次还是什么?
答案 0 :(得分:5)
在.compileFile()上形成Jade docs:
返回从包含locals的对象生成html的函数
在mose JS模板引擎中,有一个编译函数可以解析原始模板字符串,并返回一个模板函数。
当使用数据(本地人)调用函数时,它返回包含数据的HTML字符串。
来自Jade docs的代码示例:
var jade = require('jade');
// Compile a function
var fn = jade.compileFile('path to jade file', options);
// Render the function
var html = fn(locals);
// => '<string>of jade</string>'
答案 1 :(得分:3)
Jade.compileFile
方法返回一个单独的函数,然后使用参数locals
调用该函数。
为了证明这一点,您可以选择写:
var func = Jade.compileFile(layout, { pretty: false });
func(locals);
答案 2 :(得分:0)
我不知道Jade模板引擎,但第一次调用似乎返回一个函数。然后使用locals参数调用返回的函数。对不起,如果不是正确的答案。