我有一个可以输入组件的对象
{{edit-general item=item}}
在此组件内,您可以编辑数组的值。
{{#each value in item.values}}
<div class="input-field col s6 l6">
{{input type='text' value=value}}
</div>
{{/each}}
但是,此值不会绑定。项目在组件内部发生更改,但此更改不会影响模型。
我如何以我想要的方式完成这项工作?
答案 0 :(得分:2)
您无法绑定简单的字符串和对象,您需要将所有这些包装到允许绑定的Ember.Object中。
function m(data) {
return Ember.Object.create({
data: data
});
}
var model = [Ember.Object.create({
field: 'ethnicity',
values: [m('African American'), m('Asian'), m('Caucasian'), m('Hispanic'), m('Other')]
}), Ember.Object.create({
field: 'gender',
values: [m('Male'), m('Female'), m('Other'), m('Prefer not to disclose')]
})];
{{#each item in model}}
<div><b>{{item.field}}</b></div>
{{#each value in item.values}}
<div>{{value.data}}</div>
<div>{{edit-general value=value.data}}</div>
{{/each}}
<br><br>
{{/each}}
更新了JSBin:http://jsbin.com/xebizeyedu/2/edit