esh*_*col 20 backbone.js handlebars.js
我更改了我的车把模板的扩展名,并在调用handlebarjs的编译功能的函数中引用了相同的名称.
它完美无缺,没有任何问题.
但我很想知道是否有其他人尝试过这个?如果您认为这可能因任何原因导致问题,请告诉我.
出于某种原因,我觉得扩展名.handlebars有点长.我更喜欢保持最多4个字符...类似.txt或.html.
如果您发现此方法存在任何问题,请与我们联系.
例如,我将login.handlebars重命名为login.html
在getTemplate函数中(如下所示),我将调用此模板进行编译
function getTemplate(name) {
if (Handlebars.templates === undefined || Handlebars.templates[name] === undefined) {
$.ajax({
url : "templates/" + name + ".html",
success : function(data) {
if (Handlebars.templates === undefined) {
Handlebars.templates = {};
}
Handlebars.templates[name] = Handlebars.compile(data);
},
async : false
});
}
return Handlebars.templates[name];
}
Run Code Online (Sandbox Code Playgroud)
mac*_*ost 29
我的商店使用.handlebars了Require.js和Alex Sexton的require-handlebars插件,这一切都没有问题.然而,更常见的后缀,以及我刚刚提到的插件中的默认后缀.hbs(大概是因为.hbs是另一种文件类型尚未采用的3字符扩展名).
例如.hbs,你可以使用,.handlebars甚至是不同的扩展,它应该适用于任何类型的库(例如,Require),后缀实际上可能很重要.当然没有任何保证,但由于没有官方扩展库,作者通常比硬编码更好.
我会告诫不要使用.htm或者.html使用这些文件......除非你有一个非常挑剔的IDE.大多数IDE可以设置为将其.hbs视为HTML文件,用于语法着色等等.如果你的不能,那么.htm可能有意义.否则,我会保持文件扩展名不同,以便您可以轻松区分这两种类型的文件.