1

我想将所有 Backbone 模板放在一个 JS 文件中,以便我可以轻松地通过 CDN 分发它。理想情况下,它还应该与 Rails 资产编译工作流程一起使用。

可能的解决方案#1:

包含所有模板的单个 JS 文件声明如下:

app.templates.view = " \
<h3>something code</h3> \
";

太乱了 缺乏突出。

可能的解决方案#2:

包含所有内联模板的单个 html 文件。在我的主文档中包含部分内容。

<script type="text/template" id="list-item">
    <li><%= item %></li>
</script>

我不能使用通过我的 CDN 分发的缩小 JS 文件的好处。模板将与我的 HTML 文件内联。

可能的解决方案#3:

使用 Require.js 但它似乎不能解决将所有模板包含在单个 JS 文件中的需要。

4

2 回答 2

0

看看线人。它为您提供了一个非常好的开发 JavaScript 客户端的工作流程。它实际上只是聚合成一个超级简单的工作流的 Grunt 任务的集合。它所做的一件事就是将所有的 Underscore(或 Handlebars)模板编译成 JST(如 Rails)。它使用“grunt-contrib-jst”来执行此操作并将模板输出到“generated/template/underscore.js”。然后它将所有 JS 编译到一个文件中,尽管您可以轻松地单独引入 .js 文件。

它可能会为您指明正确的方向。

于 2013-03-05T12:02:34.630 回答
0

感谢您的回复。我以可能的解决方案 #2 结束,其中我有一堆模板并使用 Rails 部分包含在主文件中。目前,通过 CDN 分发模板并没有太大的好处。

*我没有选择使用 Grunt,因为我认为它增加了工作流程的额外复杂性,考虑到团队中的所有开发人员都必须采用新的工作流程。

于 2014-07-16T06:57:04.673 回答