有没有人找到动态渲染局部的方法?
我为mustache.js找到了这个link但是我不确定如何在php中实现这个,或者如果在php中甚至可以做到这一点。即使它是链接中示例中的布尔标志方法。
这样做的基础是根据视图文件选择部分。使部分选择动态,而不必在模板中指定它。
我尝试过使用这种确切的方法,只有失败。
来自链接的内容:
查看:
{
items: [
{ type: 'image', url: 'Some URL', is_image: true },
{ type: 'text', content: 'Some text', is_text: true }
]
}
模板:
base.mustache
{{#items}}
{{#is_text}}
{{>text}}
{{/is_text}}
{{#is_image}}
{{>image}}
{{/is_image?}}
{{/items}}
text.mustache
<p>{{content}}</p>
image.mustache
<p><img src="{{url}}"/></p>
...可以替换为:
查看:
{
items: [
{ partial: 'text', content: 'Some text' },
{ partial: 'image', url: 'Some URL' }
]
}
模板:
base.mustache
{{@items}}
text.mustache
<p>{{content}}</p>
image.mustache
<p><img src="{{url}}"/></p>
答案 0 :(得分:0)
在您发布的链接上向下看一下该页面,我看到操作系统提交了动态部分as a mustache spec的票证。通过那里我发现了以下由thelucid发布的内容,它实现了目标,但不像你和希望所希望的那样漂亮。
{
items: [
{ url: 'Some URL', html: function() { return '{{>image}}'; } },
{ content: 'Some text', html: function() { return '{{>text}}'; } },
]
}
base.mustache
{{#items}}
{{{html}}}
{{/items}}
text.mustache
<p>{{content}}</p>
image.mustache
<p><img src="{{url}}"/></p>
我相信html函数可以替换为只有相同值的字符串,但是我没有可以立即测试的设置。
不幸的是,除了几个表达对该主题感兴趣的人之外的最后一条评论是在2013年1月,所以我将会发表意见,并说在这一点似乎不太可能出现任何问题。< / p>