Backbone.js 如何将所有模板放在不同的HTML文件中,如;AppTmpl.html";如何在主干网中访问这些模板?
如果在index.html文件中声明了我的应用程序模板,则它们可以正常工作。 但是,我想将所有模板保存在不同的html文件中, 喜欢 -AppTmpl.htmlBackbone.js 如何将所有模板放在不同的HTML文件中,如;AppTmpl.html";如何在主干网中访问这些模板?,backbone.js,underscore.js,Backbone.js,Underscore.js,如果在index.html文件中声明了我的应用程序模板,则它们可以正常工作。 但是,我想将所有模板保存在不同的html文件中, 喜欢 -AppTmpl.html <!-- SidebarView Template --> <script id="sideBarTmpl" type="text/template"> <div class="inner_div"><img src="images/com_logo.png"></div>
<!-- SidebarView Template -->
<script id="sideBarTmpl" type="text/template">
<div class="inner_div"><img src="images/com_logo.png"></div>
<div class="inner_div"><img src="images/adv_index.png"></div>
</script>
<!-- HeaderView Template -->
<script id="folderDivTmpl" type="text/template">
<div id="div_<%= menu_sequence %>"></div>
</script>
我使用下划线模板。
但问题是下划线无法访问这些模板。
喜欢
this.template=..template($(“#headerTmpl”).html(),this.model.toJSON())
所以我需要做的是在index.html或其他文件中包含“AppTmpl.html”文件。
有什么解决办法吗
提前谢谢 我与
然后,您可以根据需要使用requireJS加载它:
require(['text!templates/AppTmpl.html'],function(AppTemplate){
this.template = _.template(AppTemplate);
});
这里有一个解决方案,这里有另一个。这个问题可能是重复的。@orangewarp实际上还有一些其他的,例如和。然而,它们似乎都有一些问题,例如使用js文件而不是
html
文件(不同之处在于,如果使用js文件,则需要避开行尾,并且在IDE中丢失语法高亮显示)。thanx ingro!!但我不希望每个模板都有html文件。正如我所写的,所有模板都应该在一个html文件中,而不是index.htmlWell中,所以我认为最好的解决方案是创建一个js文件,将每个模板分配给不同的变量,如Tmpl.AppTemplate、Tmpl.GridTemplate等。。。此js文件必须包含在应用程序之前,以便您可以通过以下方式访问模板:This.template=\uu.template(Tmpl.AppTemplate)
等等。。。