1

CDN を介して簡単に配布できるように、すべてのバックボーン テンプレートを 1 つの JS ファイルにまとめたいと考えています。理想的には、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 タスクのコレクションにすぎません。これが行うことの 1 つは、すべてのアンダースコア (またはハンドルバー) テンプレートを JST (Rails など) にコンパイルすることです。「grunt-contrib-jst」を使用してこれを行い、テンプレートを「 generated/template/underscore.js」に出力します。次に、すべての JS を 1 つのファイルにコンパイルしますが、.js ファイルを個別に簡単に取り込むことができます。

それはあなたを正しい方向に向けるかもしれません。

于 2013-03-05T12:02:34.630 に答える
0

回答ありがとうございます。私は可能な解決策#2で終了しました。ここでは、多数のテンプレートがあり、Railsパーシャルを使用してマスターファイルに含まれています。今のところ、CDN を介してテンプレートを配布するメリットはあまりありません。

*チーム内のすべての開発者が新しいワークフローを採​​用する必要があることを考えると、ワークフローがさらに複雑になると思われるため、Grunt の使用を選択しませんでした。

于 2014-07-16T06:57:04.673 に答える