当我在 dojo 文档中查找模板时,我得到的只是 dijit,示例仅表明您能够在 widget 中使用它们。我正在 js 原型(prototype)中寻找与以下方法等效的方法
var tmpl = new Template(url)
tmpl.evaluate(templateObj)
dojo 是否有一个模板方法,您可以在 dojo.declare( class ){} 中使用它,就像在 js 原型(prototype)中一样。如果不是,我怎么能实现类似的功能
谢谢
最佳答案
您可能对 dojo.string.substitute
感兴趣(您需要 dojo.require("dojo.string")
)。
http://dojotoolkit.org/api/dojo/string/substitute
[编辑]此外,如果您有兴趣获取用于从同一服务器上的 URL 进行替换的模板,您可能还需要查看 dojo.cache
(这也是通常用于获取小部件模板的内容):
http://dojotoolkit.org/reference-guide/dojo/cache.html
为了澄清missingno的回应,我认为dojo.parser
不是你现在感兴趣的;它的工作是扫描 DOM 并将 DOM 节点转换为小部件和其他 Dojo 组件。 dijit._Templated
仅在涉及子窗口小部件时使用 dojo.parser
(即 widgetsInTemplate
为 true
);另一方面,它在所有情况下都使用 dojo.string.substitute
来初始解析 ${...}
字符串(例如 ${id}
) 在模板中。
关于javascript - dojo的模板方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7503525/