我有一个people
对象数组,其中每个对象(代表一个人)包含一个roles
数组:
@observable people = [
{
name: 'Name1',
roles: [
'1',
'2'
]
},
{
name: 'Name2',
roles: [
'3',
'4'
]
}
]
我希望视图遍历并显示它们(例如repeat.for="role of roles"
)。people
但是,当数组更新时,视图不会更新。Angular
-option 对我不起作用的示例代码:
<select name="roles" multiple class="ui fluid multiple dropdown">
<option value="">Roles</option>
<option selected.bind="accounts[2].roles.includes('1')" value="angular">Angular</option>
<option value="css">CSS</option>
<option value="design">Graphic Design</option>
<option value="ember">Ember</option>
</select>
当我初始化people
数组以role '1'
从一开始就包含第三人称时,一切正常,但是当我动态添加相同的第三人称时(例如通过按钮),它不会更新。
我知道如何用via观察people
数组collectionObservers
this.subscription = this.bindingEngine.collectionObserver(this.people)
.subscribe(this.peopleChanged.bind(this))
但我对整个this.people
数组不感兴趣,而是对里面的嵌套数组roles
数组感兴趣。如何解决使用 obersers 观察数组内的数组的问题? this.people