24

jQuery のテンプレート エンジンを使い始めたところです。これまでのところかなりいいですね。それでも、どうにかして外部ファイルからテンプレートをロードすることが可能かどうか疑問に思っています。たくさんのテンプレートがあると想像してください。これは html コードを台無しにするだけでなく、キャッシュすることもできず、リクエストごとにダウンロードする必要があります。

それらをすべて外部ファイルで定義し、それらをロードしてコンパイルされたテンプレートをlocalStorageに保存する方法があることを望んでいました。

外部ファイルからそれらをロードする方法を知っている人はいますか?

4

3 に答える 3

15

このテンプレートを ajax で読み込むことができます。

<script>
  var movies = [
    { Name: "The Red Violin", ReleaseYear: "1998", Director: "François Girard" },
    { Name: "Eyes Wide Shut", ReleaseYear: "1999", Director: "Stanley Kubrick" },
    { Name: "The Inheritance", ReleaseYear: "1976", Director: "Mauro Bolognini" }
  ];

  $.get("templates/movieTemplate.html", function(data, textStatus, XMLHttpRequest){
    var markup = data; //"<tr><td colspan='2'>${Name}</td><td>Released: ${ReleaseYear}</td><td>Director: ${Director}</td></tr>"

    /* Compile markup string as a named template */
    $.template( "movieTemplate", markup );

    /* Render the named template */
    $.tmpl( "movieTemplate", movies ).appendTo( "#movieList" );
  });
</script>

テンプレートを 1 回だけロードする場合は、ロードされたテンプレートの localstorage ロジックまたは配列を追加できるようになりました。

于 2010-12-06T12:15:31.140 に答える
1

私はブラウザのjQuery HTML Template LoaderでindexDBキャッシングを使用して、appearブロックでhtmlをレンダリングするajaxのjQueryプラグインとして小さなlibを書きました

于 2015-04-13T07:46:46.387 に答える
0

私は最近、これを支援するための JavaScript ライブラリを作成しました。

https://www.github.com/stevenmhunt/tmpl.loader

タグを使用して jsRender またはその他の種類のテンプレート ファイルを追加する<link>と、自動的に登録されます。

于 2012-09-13T14:27:59.263 に答える