This repository has been archived by the owner on Apr 9, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 49
典型不爽模板收集 #42
Labels
Comments
其实用得还挺开心的…… 举个栗子,我可以利用 partials 做递归: var tmpl = '{{#legos}}{{>lego}}{{/legos}}'
var partials = {
lego: '' +
'<a href="javascript:void(0)"><i class="iconfont">&#{{icon}};</i>{{name}}</a>' +
'<div class="children">{{#children}}{{>lego}}{{/children}}</div>'
var data = {
legos: [{
name: 'foo',
icon: 817,
children: [{
name: 'foo-child1',
icon: 831
}, {
name: 'foo-child2',
icon: 237
}]
}]
}
mustache.render(tmpl, data, partials) 不爽的例子自然也不少,比如有的时候好想遍历数组的时候取到那个索引值,顺便给它 +1:
另外,下边这种数据尽管很直观,但没法用 mustache 渲染: var fonts = {
simsun: '宋体',
heiti: '黑体'
} 想要这样的结果的话: <select>
<option value="simsun">宋体</option>
<option value="heiti">黑体</option>
</select> 只能改成: var data = [{
key: 'simsun',
label: '宋体'
}, {
key: 'heiti',
label: '黑体'
}] 然后模板这么写: {{#fonts}}<option value="{{key}}">{{label}}</option>{{/fonts}} |
xtemplate 各种需求都能满足的: http://docs.kissyui.com/docs/html/demo/component/xtemplate/index.html 而且可以自由选择加载 在线编译 compiler+runtime 离线编译 runtime |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
大家觉得mustache不太够用,请有意识的收集下mustache力不从心的地方,请写出数据输入和HTML输出,再配上大家觉得别扭的数据处理和模板等。
The text was updated successfully, but these errors were encountered: