5

サーバー側では node.js、express.js と jade を使用しています。クライアント側で jade テンプレートを埋めるための小さなラッパー関数を作成しました。クライアント側ではrequireJSとjQueryを使おうと思っていますが、まだ決めていません。今、私が何度もやらなければならない仕事は

  • テンプレートを取得する (サーバーまたはキャッシュから)
  • サーバーからデータを取得する
  • テンプレートに入力し、要素に/代わりに挿入します

注: テンプレート エンジンはたくさんありますが、私の質問はテンプレート エンジンについてではなく、簡単なワークフローについてです。

私はこのようにしなければなりません:

var get_data = function (tpl) {
    $.get(url, function(data) {
        $('#target_element').html(jade.render(tpl, {locals: data}));
    });
};

if (!'template_name' in _cache) {
    $.get('template_name', function(tpl) {
        _cache['template_name'] = tpl;
        get_data(tpl);
    });
}
else {
    get_data(_cache['template_name']);
}

(この例では、テンプレートとデータが同期的に取得されますが、これは適切ではありません)

次のようなコードが欲しいです。

render_template('template_name', 'url?arguments=values', {replace: '#element_id'});

(MongoDB の構文に似ています)

この作業を行うための単純なフレームワークまたは jquery モジュールはありますか?

4

1 に答える 1

1

要件に完全に適合するかどうかはわかりませんが、PUREは、次のことを検討するのに適したテンプレートエンジンです。

http://beebole.com/pure/

于 2011-06-25T17:23:31.073 に答える