backbone.js - 单独的模板文件不使用主干和下划线呈现

标签 backbone.js

通过使用

<script type="text/template" id="templateid">
<!-- Template content goes here -->
</script>

该代码运行良好。

但是,如果我将模板作为外部文件
<script type="text/template" id="templateid" src="template.js"></script>

这不会工作。

上面两种方法之间有什么区别,我又如何解决这个问题?还是我在这里错过了可能很明显的东西?

最佳答案

如果您只是想通过使用各种示例中的$("#templateid").html()之类的内容来获取模板文本,则只有当文本确实在<script>标记中内联时,此方法才有效。

通常,不可能使用<script>标记获取远程文件的内容。

如果要加载外部模板,则必须使用代码显式获取内容(例如,使用JQuery的$.get()或带有文本插件的require.js)。

这是有关如何在Backbone上下文中获取外部模板的更多详细信息:

  • http://c2journal.com/2012/12/26/backbone-js-external-template-files-the-proper-way/-纯 Backbone + jQuery
  • http://jsdude.wordpress.com/2012/12/11/requirejs-and-backbone-template-preloading/-使用require.js及其文本插件

  • 但是,请小心-过度使用此解决方案将导致许多其他要求来获取模板,从而导致应用程序运行缓慢。通常,以通常的方式嵌入模板(在<script>标记中内联)对于性能而言会更好。

    关于backbone.js - 单独的模板文件不使用主干和下划线呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17316252/

    相关文章:

    javascript - 使用 Backbone.Model 作为 es6 类

    javascript - 在 index.html 中使用 require.js 时,我无法从 ace.min.js 获取事件

    javascript - 如何在backbone.js中显示html内容

    api - Backbone model.save() 未将 ID 附加到 URL 末尾

    jquery - Backbone.js on(),最后一个this指的是什么?

    javascript - Backbone.js:始终检测模型何时设置了属性,而不是/只是/已更改

    javascript - backbone.js 的基本目的和好处是什么?

    jquery - backbone.js 中的 $ 查看

    javascript - Backbone 模型更新未传播到集合

    javascript - 填充 Backbone 集合的正确方法