要求:按钮很少,点击每个按钮时,立即出口将以视图呈现。 (不是页面中的其他出口)
假设我在#each中创建出口。
{{#each item in model}}
<#link-to 'passenger' item.id>Open Corresponding Outlet </link-to>
{{outlet item.id}}
{{/each}}
从后面我正在渲染出口:
model: function (params) {
return [
{ id: params.passenger_id}
]
},
renderTemplate: function () {
this.render({ outlet: this.get('controller.model')[0].id });
},
这不起作用。
任何人都可以帮我这么做吗?
答案 0 :(得分:0)
您无法创建动态命名的商店,它会破坏代表您正在查看的页面的网址,核心成员会大量宣传这些网址。
您应该使用渲染助手在模板中渲染,然后使用
{{#each item in model}}
{{render 'something' item}}
{{/each}}
在控制器/模板内部,您可以添加额外的逻辑,以便您希望它如何进行交互。
此外,您可以在您的旅客路线下添加其他资源,并在点击时提供信息来存储该信息。
答案 1 :(得分:0)
不确定你是否还在寻找解决方案,因为@ kinpin2k提到你不能使用动态插座,但也许动态部分会有所帮助。
像这样:
{{partial someTemplateName}}
其中someTemplateName
可以是控制器中的任何计算属性。如果该属性返回falsy,则不会显示任何内容。
以下是参考:http://emberjs.com/api/classes/Ember.Handlebars.helpers.html#toc_bound-template-names