問題タブ [client-side-templating]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2405 参照

javascript - バックエンド テンプレート エンジンとフロントエンド テンプレート エンジンを使用する場合

ほとんどの従来の MVC フレームワークには、独自のテンプレート ソリューション (Jinja2、Mako など) が含まれています。angular や backbone などの新しい ui フレームワークのいずれかを使用することにした場合、それらはフロント エンドのテンプレート ソリューションの使用を奨励しているようです。

性能に違いはありますか?どちらの方法でも良い点と悪い点は何ですか? これらの js テンプレート ソリューションの一部を使用する場合、ie または他のブラウザに問題はありますか?

0 投票する
0 に答える
193 参照

javascript - クライアント側でハンドルバー テンプレートを維持する方法はいくつありますか

私のアプリケーションでは、クライアント側からハンドルバーをテンプレート化しています (サーバー側からはテンプレート化していません)。したがって、これまでは、次のようにタグhtmlを使用してファイル内のすべてのテンプレート化を維持していました。script

テンプレートが必要なときはいつでも、次のようにコンパイルしてコンパイル結果をdomに追加します

正常に動作していますが、すべてのハンドルバー テンプレートを別のファイルに分離することを考えているため、html ファイルを維持するのは簡単です。

これについては、.jsグローバル変数を作成するだけで、すべてのテンプレートをファイル内のファイルに移動することを考えており、次の方法でオブジェクトです。

いつでも、次のようにテンプレート コードにアクセスできます。

この方法もうまくいきますが、私が知りたいのは、この方法が良いかどうかです。良い方法でない場合は、シェルがこれをどのように行うかです。

ファイルについて聞いたことがあり.hbsますが、基本的にはpre-compilerテンプレートが含まれています。サーバー側からテンプレートを作成する場合は便利ですが、私の場合はクライアント側自体でテンプレートを作成する場合に役立ちます。

誰でも私に提案できますか、どちらの方法が良いですか。

0 投票する
1 に答える
2158 参照

javascript - クライアント側サーバー側テンプレートnodejs

nodejsを使用してwebappに取り組んでいます。私はもともとサーバー側の hbs テンプレートだけを使用するつもりでしたが、クライアント側のテンプレートのバックボーンについて知りました。サーバー側でhtmlページ全体を生成して送信する代わりに、サーバーからデータを取得してhbsテンプレートを使用して表示できることがわかりました。しかし、データを取得して 1 つの Web ページを表示するためにクライアント側で多くの ajax 呼び出しを行うことはお勧めできません。サーバーへの要求が非常に多くなり、ページが遅くなるように見えることをどこかで読んだこともあります。だから私は、1ページにいくつのリクエストを行うことができるかという一般的なルールがあるのだろうか? 従来の 1 リクエスト 1 レスポンスを使用する必要がありますか? または、サーバーからデータを取得して表示するクライアント側のjavascriptを応答する必要がありますか?

ありがとう

0 投票する
1 に答える
496 参照

javascript - プリコンパイル済みテンプレートでの Dust.js クライアント側レンダリングの問題

事前にコンパイルされたダスト テンプレートを使用して単純なクライアント側レンダリングをテストしようとしていますが、レンダリングしようとすると、ダストがテンプレートを見つけられないと文句を言います。

私のページは次のようになります。

そして、私のテンプレート ファイル (basicName.tl):

これにコンパイルします (basicName.js):

クライアント側のテンプレート コンパイルを使用して、この同じテンプレート/ペイロード/html をテストしましたが、すべて正常に動作します。コンパイル済みのテンプレートを使用できるようにするために何が欠けていますか?

0 投票する
1 に答える
143 参照

javascript - IDで直接アクセスすると、クリック時のjqueryがトリガーされません

私はdust.jsを使用しています(適切なドキュメントがないためにグーグルで調べた後)。最後に、ハイパーリンクを動的に作成することができました。次に、動的に生成されたハイパーリンクにオンクリック機能を提供したいと思います。

以下は私のドキュメントの準備です。奇妙なことに、生成されたハイパーリンクをクリックすると、Apple が表示されますが、Orange は表示されません。2番目のonclickが機能しなかった理由を知りたいですか? 違いは、最初のものでは、ドキュメントを使用して ID (「#linked」) を参照しています。2 番目のものでは、ID に直接アクセスしています。

0 投票する
2 に答える
147 参照

javascript - Can.js にプリコンパイル済みテンプレートを登録する方法

私は can.js を使用しており、テンプレートをプリコンパイルしてロードしようとしています。テンプレートを取得し、can-compileを使用してプリコンパイル し、結果のスクリプト ファイルに次のようにロードしました。

「can.Mustache」で登録しているとは思えませんか?コンパイル済みのテンプレートを can.js に登録する方法を知っている人はいますか?

編集:

@Daff、can.Mustacheを使用すると(私はcan.jqueryを使用しています)、(a)can.mustacheが未定義であり、(b)たとえば次のように入力した場合:

...Mustache コンストラクターに到達すると、次のようになります。

...新しい Mustache を構築する場所 (ln. 3) で、テンプレート名をオプション引数として渡します。それをスキャナーに渡すまでに、テンプレート名の文字列であった下部の「オプション」の fn は、各プロパティがその文字列の 1 文字であるオブジェクトになります...

0 投票する
1 に答える
1207 参照

javascript - キャッチされていない TypeError: 未定義の Dustjs のプロパティ 'substr' を読み取れません

私はjavascriptテンプレート、つまりdustjsを学ぼうとしていますが、Googleでも答えられないほど基本的な問題に遭遇しました:)

これが最も単純な形式のコードです

Javascript

初期化中のテンプレートは完全にレンダリングされますが、ボタンをクリックするとエラーが発生します

キャッチされていない TypeError: 未定義のプロパティ 'substr' を読み取ることができません

私は何を間違っていますか?