更新は、jQueryのテンプレートのパフォーマンスを向上させる
はどうやら、jQueryのテンプレートをコンパイルすることができ、それはhereを示す if文とテンプレートのパフォーマンスが向上します。
しかし、図に示すように、プリコンパイルされたjQueryテンプレートは、テンプレートにロジックブロックが含まれていないため、私のケースではあまり効果がありません。
別のテンプレートエンジンの使用を提案している人にとって、理想的にはjQueryテンプレートだけを使用したいと思うので、チームの誰もがjQueryを知っています。いくつかのテンプレートエンジンを比較するテストケースもthisです。
こんにちは、
ただ、今日は私がjQueryのテンプレートを使用してパフォーマンスの問題があると言われました。
比較するには、jQueryテンプレートと古い古い文字列の追加メソッドを使用して、テーブルに行を追加しました。結果はhereとなります。 jQueryテンプレートを使用すると、文字列追加メソッドと比較して約65%遅くなります。
jQueryテンプレートスクリプトのパフォーマンスを向上させるために何ができるのだろうかと思います。
完全なスクリプトは、提供されたリンクで表示できます。しかし、基本的な考え方は次のとおりです。
テンプレート:
<script type="x-jquery-tmpl" id="tmplRow">
<tr>
<td><input type="checkbox" value="${id}" /></td>
<td>${firstName} ${lastName}</td>
<td class="edit">
<a>Edit</a>
<input style="display:none;" type="hidden" value="Blah" />
<input class="cancel" type="button" value="cancel" />
</td>
<td class="select">
<a>Select</a>
<select style="display:none;">
<option>0</option>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
<option>5</option>
<option>6</option>
<option>7</option>
<option>8</option>
<option>9</option>
<option>10</option>
</select>
<input class="cancel" type="button" value="cancel" />
</td>
<td>More string</td>
<td>More string</td>
<td>More string</td>
<td>More string</td>
<td>More string</td>
<td>More string</td>
</tr>
</script>
データ:
<script type="text/javascript">
var data = [];
for (var i = 0; i < 100; i++) {
var row = {
id: i,
firstName: 'john',
lastName: 'doe'
};
data.push(row);
}
</script>
HTML:
<table id="table"></table>
が実行されます。
<script type="text/javascript">
$('#tmplRow').tmpl(data).appendTo('#table');
</script>
の
おかげで、
チー
私はハンドルバーをチェックアウトしても構いません。しかし、彼らのダウンロードは機能しません。ソースから "handlebars.js"だけを参照すると、未定義のメソッド "required"で失敗します。 jsファイルのコピーがありますか? –
jquery templatesはテンプレートも 'コンパイル'します... – user406905
ロジック制御ブロックがある場合は、明らかに 'コンパイル'テンプレートが役立ちます。詳細については、更新された質問を確認してください。 –