javascript - 如何在 doT.js 模板系统中包含文件

标签 javascript templates dot.js

我使用 doT.js 1.0 通过 requirejs 进行模板化。 我的目标是从另一个名为“freight.html”的文件加载一个名为“length.html”的文件。

advanced sample说明您可以使用

加载文件

{{#def.loadfile('/snippet.txt')}}

所以我尝试在 freight.html 中使用 {{#def.loadfile('/length.html')}}。 freight.html 与 length.html 在同一目录中。

但是,javascript 控制台抛出错误:

Uncaught TypeError: Object #<Object> has no method 'loadfile' 

如何让 loadfile 工作?还是文档有误,没有加载文件功能?

最佳答案

看来 loadfile 需要您根据您的要求创建。如果您使用 express ,我建议您查看 https://github.com/nerdo/dot-emc .该模块包装了 doT,以便您可以使用 res.render() 返回您的模板。它还提供了一个漂亮的包含函数来解决您上面遇到的问题。因此,您将使用:

而不是 loadfile

{{#def.include('length')}}

请注意,如果您使用此模块,默认文件扩展名是 .def,需要使用选项更改它以使用 say .html

关于javascript - 如何在 doT.js 模板系统中包含文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22121892/

相关文章:

javascript - 使用 doT.js 的嵌套列表(来自嵌套数组/对象)

java - 支持 JavaScript 的 Eclipse JFace 编辑器

javascript - 使用 doT.js 递归

javascript - 使用 JavaScript 控制过渡

javascript - 将函数结果分配给 JavaScript 中的变量

c++ - 模板元组 - 在每个元素上调用一个函数

c++ - 如何防止函数模板中的隐式转换?

Javascript嵌套树排名

javascript - 如何从 Google 表格中获取超链接

c++ - 模板 vector 到 vector 转换函数