[英]Rendering one collection using multiple templates
我正在構建新聞提要類型功能,該功能需要客戶端提要提要項。 提要項有不同類型,這意味着每種類型需要不同的模板。 我目前正在使用UnderscoreJS模板,但願意接受新的想法。
我正在使用大致這樣的方法:
template : {
f : "<li> <%= item.user.name %> uploaded a file </li>", // file upload
m : "<li> <%= item.user.name %> just joined </li>", // just joined
p : "<li> <%= item.user.name %> - <%= item.data.txt %> </li>" // comment
}
var html="";
for(i in feeditems){
var item = feeditems[i];
html+= _.template(template[item.type], { item: item });
}
$('#container').html(html);
這是解決此問題的最佳方法嗎?
模板
將JavaScript模板編譯成可以評估以進行渲染的函數。 對於從JSON數據源呈現HTML的復雜位很有用。
根據我的閱讀,它應該非常有效。
是最有效的嗎?
很難說,最有效的方法是僅對字符串進行硬編碼,不是嗎? 根本不進行查找,但是,有時最好犧牲一點效率以擁有更具可讀性的代碼。
您有任何性能問題嗎? 如果您不這樣做,我不會擔心。 如果您這樣做了,我會分析應用程序,而不是考慮這是否是最有效的模板,因為瓶頸很可能在其他地方。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.