Ember.js 如何将属性添加到EmberJS arrayController
如何向arrayController中的每个项添加控制器属性 例如,如果我将属性命名为“isExpanded”,我希望能够在模板中执行以下操作:Ember.js 如何将属性添加到EmberJS arrayController,ember.js,Ember.js,如何向arrayController中的每个项添加控制器属性 例如,如果我将属性命名为“isExpanded”,我希望能够在模板中执行以下操作: {{#each controller}} {{#if isExpanded}} expanded content {{else}} non-expanded content {{/if}} {{/each}} 请注意,我不能在实际应用程序中使用ObjectController;请参阅下面King
{{#each controller}}
{{#if isExpanded}}
expanded content
{{else}}
non-expanded content
{{/if}}
{{/each}}
请注意,我不能在实际应用程序中使用ObjectController;请参阅下面Kingpin2回复后的我的评论。使用项目控制器,并将属性添加到项目控制器。它是一个控制器,将用于控制器列表中的每个项目
App.ColorsController = Em.ArrayController.extend({
itemController: 'color'
});
App.ColorController = Em.ObjectController.extend({
isExpanded: false
});
若您谈论的是isExpanded的arraycontroller范围,那个么它也很简单:
{{{#控制器中的每个项目}
{{{#if controller.isExpanded}
颜色:{item.Color}和类:{{item.Class}
{{else}
颜色:{{item.Color}
{{/if}
{{/每个}}
App.IndexController=Em.ArrayController.extend({
isExpanded:错,
});
最后一点注意,当您只说
{{each controller}}
时,您正在将作用域从作用域中的控制器更改为作用域中的项,如果您想访问控制器属性,则需要使用controller.isExpanded
来限定属性,并将属性添加到项目控制器。它是一个控制器,将用于控制器列表中的每个项目
App.ColorsController = Em.ArrayController.extend({
itemController: 'color'
});
App.ColorController = Em.ObjectController.extend({
isExpanded: false
});
若您谈论的是isExpanded的arraycontroller范围,那个么它也很简单:
{{{#控制器中的每个项目}
{{{#if controller.isExpanded}
颜色:{item.Color}和类:{{item.Class}
{{else}
颜色:{{item.Color}
{{/if}
{{/每个}}
App.IndexController=Em.ArrayController.extend({
isExpanded:错,
});
最后一点注意,当您只说
{{each controller}}
时,您正在将作用域从作用域中的控制器更改为作用域中的项,如果您想访问控制器属性,则需要在我的实际应用程序中使用controller.isExpanded
限定属性,我需要一个阵列控制器。arraycontroller与具有子例程的父管线相关联。因此,根据我在原始帖子中的示例,我想使用“isExpanded”控制器属性来决定是否扩展arraycontroller中的每个数组成员。我没有说不使用数组控制器,我说的是也使用项目控制器。iExpanded住在哪里?它位于控制器中的每个项上,还是控制所有项是否存在?我在上面添加了另一个示例,它位于数组控制器上。我尝试将属性添加到关联的itemController中,但仍然无法在每个块中访问它。我推测我没有使用正确的语法。仅仅使用{{isExpanded}}不起作用。我还尝试了{{controlname.isExpanded},但也没有成功。正确的语法是什么?此外,您可以在每个循环周围添加一个if语句,只需创建两个循环。不,在我的实际应用程序中,我需要一个数组控制器。arraycontroller与具有子例程的父管线相关联。因此,根据我在原始帖子中的示例,我想使用“isExpanded”控制器属性来决定是否扩展arraycontroller中的每个数组成员。我没有说不使用数组控制器,我说的是也使用项目控制器。iExpanded住在哪里?它位于控制器中的每个项上,还是控制所有项是否存在?我在上面添加了另一个示例,它位于数组控制器上。我尝试将属性添加到关联的itemController中,但仍然无法在每个块中访问它。我推测我没有使用正确的语法。仅仅使用{{isExpanded}}不起作用。我还尝试了{{controlname.isExpanded},但也没有成功。正确的语法是什么?此外,您可以在每个循环周围添加一个if语句,只需创建两个循环。