0

您可能知道,下划线模板在使用前需要编译。现在,如果您的应用程序使用了大量它们,为了呈现由多个所谓的部分组成的特定 UI,您需要编译所有这些部分,这可能需要很多时间。(参考:http ://underscorejs.org/ )

现在,灰尘框架在另一方面进行了优化,它支持预编译模板。(参考:http ://akdubya.github.com/dustjs/ )

如果你想用下划线达到同样的效果,你必须找到自己的工具。

到目前为止,我设法摆弄了以下代码(在 Chrome 中测试)。 http://jsfiddle.net/GNK6M/

sources = $('script').map(function(i, s){
    return _.template($(s).html()).prototype.constructor.source
})
console.log(sources.get().join("\n"))

此代码生成编译后的 Temples 源代码并将其打印到 js 控制台。

你们知道更好的选择吗?约束是模板必须是下划线。

4

2 回答 2

0

如果你使用 require.js,你可以使用这个插件来编译和包含你的模板https://github.com/ZeeAgency/requirejs-tpl

于 2013-02-01T16:52:34.683 回答
0

假设我们有一个(字符串)数组中的所有源,称为“源”,(这可以通过多种方式实现,但不是问题的主题)

var sources = [...];

var compiled_sources = sources.map(function(i, s){
    return _.template($(s).html()).prototype.source
})

console.log(sources.get().join("\n"))
于 2014-02-21T15:40:12.907 回答