[英]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.