私のアプリケーションでは、クライアント側からハンドルバーをテンプレート化しています (サーバー側からはテンプレート化していません)。したがって、これまでは、次のようにタグhtml
を使用してファイル内のすべてのテンプレート化を維持していました。script
<script id="selectdropdownTpl_mobile" type="text/x-handlebars-template">
<option value="{{optValue}}" label="{{name}}">{{name}}</option>
</script>
テンプレートが必要なときはいつでも、次のようにコンパイルしてコンパイル結果をdomに追加します
var alertCompilation= Handlebars.compile(document.getElementById("selectdropdownTpl_mobile").innerHTML)
alertCompilation({"optValue":"test","name":"firstApp});
正常に動作していますが、すべてのハンドルバー テンプレートを別のファイルに分離することを考えているため、html ファイルを維持するのは簡単です。
これについては、.js
グローバル変数を作成するだけで、すべてのテンプレートをファイル内のファイルに移動することを考えており、次の方法でオブジェクトです。
//fileName test.js
var templates={
"selectdropdownTpl_mobile":"template code"
}
いつでも、次のようにテンプレート コードにアクセスできます。
var alertCompilation= Handlebars.compile(templates["selectdropdownTpl_mobile"]);
alertCompilation({"optValue":"test","name":"firstApp});
この方法もうまくいきますが、私が知りたいのは、この方法が良いかどうかです。良い方法でない場合は、シェルがこれをどのように行うかです。
ファイルについて聞いたことがあり.hbs
ますが、基本的にはpre-compiler
テンプレートが含まれています。サーバー側からテンプレートを作成する場合は便利ですが、私の場合はクライアント側自体でテンプレートを作成する場合に役立ちます。
誰でも私に提案できますか、どちらの方法が良いですか。