自定义组件中的双向绑定不起作用

时间:2015-03-04 10:48:33

标签: ember.js ember-cli

我创建了一个这样的组件:

模板/组件/文件-dropzone.hbs

<p>Awesome text</p>
<textarea id="drop-textarea" rows="10" cols="50">
  {{value}}
</textarea>

组件/文件-dropzone.js

import Ember from 'ember';

export default Ember.Component.extend({
  value: '',

  valueChanged: function() {
    console.log("yup")  // is never triggered
  }.observes('value'),
})

我在另一个模板中使用此组件:

<div class="large-7 columns padding-left-reset"
  {{files-dropzone value=body}}
</div>

虽然textarea在加载页面时包含正确的body值,但它并没有绑定它。我观察身体,当我更改文本区域内的文本时,它不会改变。

编辑:组件本身的value-attribute也不会改变

我做错了什么?

1 个答案:

答案 0 :(得分:2)

我不认为Ember知道它应该将{{value}}绑定到文本区域。

它应该可以使用textarea助手:

{{textarea value=value id="drop-textarea" rows="10" cols="50"}}

您想以某种方式调整文本区域的行为吗?