0

残り火のテキストフィールドを再利用する方法を見つけるのに少し行き詰まっているので、助けていただければ幸いです。

私が持っているのは(ここでは簡略化されています)次のような行の選択です:

<div class="detailItem">Email: {{view Ember.TextField  valueBinding="email"}} </div>
<div class="detailItem">Name: {{view Ember.TextField  valueBinding="name"}} </div>

常に div でラップする代わりに、新しいビューを利用したいと思います。例えば:

<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: "",
        ......
});

よくわからないのは、テキストフィールドの valueBinding をコントローラーにリンクする方法です (実際にはコンテンツです)。明らかに、別のプロパティを DetailItemView に追加し、値が「email」と「name」であるそのプロパティでインスタンス化できます。これらを含まれている Ember.TextField に渡すにはどうすればよいでしょうか。

ご協力ありがとうございます

4

1 に答える 1

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"}}
于 2013-05-11T16:27:32.060 に答える