我一直在寻找重用ember文本字段的方法,所以任何帮助都会受到赞赏。
我所拥有的(在此简化)选择的行如:
<div class="detailItem">Email: {{view Ember.TextField valueBinding="email"}} </div>
<div class="detailItem">Name: {{view Ember.TextField valueBinding="name"}} </div>
而不是总是包装在div中我想使用新视图。 e.g:
<script type="text/x-handlebars" data-template-name="detailItem">
<div class="detailItem">{{Item name}}: {{view Ember.TextField valueBinding="itemValue"}} </div>
</script>
App.DetailItemView = Em.View.extend({
templateName: 'detailItem',
name: "",
......
});
我不确定的是我如何将textfield的valueBinding链接到我的控制器(实际上它是内容)。我显然可以向DetailItemView添加另一个属性,并使用具有值'email'和'name'的属性对其进行实例化。我怎么会把这些传递给包含的Ember.TextField?
感谢您的帮助
答案 0 :(得分:1)
您可以执行以下操作:
App.DetailItemView = Ember.View.extend({
templateName: 'detail_item',
classNames: ['detailItem'],
label: null,
value: ''
});
和模板:
<script type="text/template" id="detail_item">
{{view.label}}:
{{view Ember.TextField valueBinding="view.value"}}
</script>
然后像这样使用它:
{{view App.DetailItemView label="Email" valueBinding="email"}}
{{view App.DetailItemView label="Name" valueBinding="name"}}