我需要解释在emberJS中使用itemcontroller。
我创建了一个如下所示的把手模板:
{{#each thing in controller itemController="itemController"}}
{{view "testview" contentBinding="thing"}}
{{/each}}
testview创建一个html表,在testview中我在每个循环中使用第二个视图创建了几个tr:
{{each item in view.content.thing}}
{{view 'trview' contentBinding="item"}}
{{/each}}
除此之外,我添加了一个属性" listOfProperties" (Ember.A())到itemController。
我使用trview的click功能为" listOfProperties"添加一个值。 itemController的数组。
在这里我收到一个错误:如果我点击一个tr,该值将被添加到每个itemControllers" listOfProperties"数组而不仅仅是一个"事物" itemController。
答案 0 :(得分:0)
我猜是因为你没有包含你的物品控制器,但你可能会遇到参考问题。数组是一个参考,因此在项目控制器的实例之间共享。
App.ItemController = Em.ObjectController.extend({
setup: function(){
this.set('listOfProperties', []);
}.on('init'),
listOfProperties: null,
});