在JavaScript文件上使用模板

时间:2016-06-10 18:10:16

标签: javascript node.js templating

我处于最有趣的位置,我想在服务器端模拟我的JavaScript文件,以包含和删除基于对象的某些部分。给定一个像这样的对象:

var obj = {
    "includeA": true,
    "includeB": false,
    "includeC": true
}

我希望能够包含/排除所述JS文件的某些部分。例如:

if (obj.includeA) {
    // This is some code from A
}

if (obj.includeB) {
   // This is some code from B
}

会生成字符串或文件,如下所示:

// This is some code from A

我已经研究了一些基本选项,我想到的最重要的一个想法是简单地在JS中使用if语句。然而,这段代码看起来相当糟糕,考虑到最多有1000行,根本不适合:

var string = ""

if (obj.includeA) {
    string += "This is one line \n"
    string += "This is another line \n"
}
// etc.

这会产生正确的输出,但string +=的重复性让我厌恶它。然后我决定把它打包成一个函数:

var string = ""

function call(line) {
    string += line + "\n"

if (obj.includeA) {
    call("This is one line")
    call"This is another line)
}
// etc.

但这似乎只是略微好一点。是否有任何类型的模板引擎(想象类似于Jade的东西),它允许模仿像这样的文本块?

0 个答案:

没有答案