小胡子{{{局部}}} VS {{>局部}}(mustache {{{partial}}} v

2019-10-22 21:42发布

我在我的Node.js应用程式车把/胡子布局文件看起来像这样:

{{> header}}
{{> navbar}}
{{{body}}}
{{> footer-user}}
{{> footer}}

由于所有五个线包括,有两种类型的包括有什么区别? 我可以取代{{{体}}}与{{>体}}或{{>头}}与{{{标题}}}? 他们似乎都没有逃脱这是包含在HTML。 什么是最好的做法是什么?

Answer 1:

语法{{> name}}是谐音,即包括另一个模板:

把手允许通过谐音模板重用。 谐音是正常的把手模板,可以直接由其他模板调用。

{{{name}}}是用于包括数据而不逸出它。 如果你想要的数据进行转义,你会使用{{name}}

车把HTML的逸出由返回的值{{表达}}。 如果你不想把手逃跑的值,用“三藏匿”,{{{。

因此,他们是不同的东西。

{{{body}}}指的是body在你的应用程序提供当前上下文属性(或者它可能是指一个辅助功能,但这里并非如此)。

如果你有{{>body}}中的代码,这将意味着你有一个模板命名的body要车把加载。

需要注意的是,如果你使用正确的把手,都谐音需要通过调用注册Handlebars.registerPartial (如果你的项目使用express-handlebars ,但这一切给你,让你不会找到这样的代码)。

把手的文档可以在这里找到handlebarsjs.com 。



文章来源: mustache {{{partial}}} vs {{> partial}}