我试图使用ember.js中的'render',我想要做的是指定要呈现的模板内容:
<div>
{{render "content"}}
</div>
<script type="text/x-handlebars" data-template-name="template1">
content 1
<script>
<script type="text/x-handlebars" data-template-name="template2">
content 2
<script>
App.ContentView = Ember.View.extend({
templateName: validateSomething() ? 'template1' : 'template2',
});
这就是我所拥有的但不起作用,是否有可能成为我正在尝试的东西?其他一些想法??
谢谢!
答案 0 :(得分:0)
我认为templateName: validateSomething() ? 'template1' : 'template2'
不起作用。为什么不使用Handlebars {{#if}}{{/if}}
帮助器来确定要呈现的内容(在您的内容模板中)?
更新:这可能会更符合您的目标:
<div>
{{render "content"}}
</div>
<script type="text/x-handlebars" data-template-name="content">
{{#if condition}}
{{view App.Template1View thisBinding="this"}}
{{else}}
{{view App.Template1View thisBinding="this"}}
{{/if}}
<script>
<script type="text/x-handlebars" data-template-name="template1">
content 1
<script>
<script type="text/x-handlebars" data-template-name="template2">
content 2
<script>
我还没有测试过这个,但它应该足以证明这个想法。