对所有页面使用相同的Handlebars模板

Use same Handlebars template for all the pages

本文关键字:Handlebars 模板      更新时间:2023-09-26

我有一个用例,我希望所有页面都有一个导航栏。到目前为止,我使用的技术是保留一个外部JSON文件,并使用jQuery.getJSON库获取它。我使用jQueryDOM方法来生成HTML。

我觉得很乱,很想用Handlebars模板代替。但我怀疑,在Handlebars中,您可以在HTML中的script标记中添加script。那么,有没有一种方法可以只编写一个单独的Handlebars模板并在所有页面上调用它呢?

我搜索了一下,什么也找不到。我只是想问我是否可以像那样嵌入Handlebars模板,或者我必须为所有需要导航栏的页面显式嵌入?换句话说,我可以在xyz.js文件中添加Handlebars模板吗。

简短的回答是:是的,你可以。您可以将模板预编译为一个JavaScript文件,并使用JavaScript将其插入到文档中,方法是使用分部方法,也可以使用Tal Bereznitsky的混合方法,这样就可以混合和匹配预编译和未编译的模板。