【发布时间】:2017-10-01 23:35:24
【问题描述】:
my-textfield 的 JS 文件如下所示:
import layout from '../templates/components/my-textfield';
export default Ember.component.extend({
id: '',
layout,
tagName: ''
});
my-textfield 的车把文件如下所示:
<div>
{{my-textfield/input id=id}}
{{my-textfield/label for=id}}
</div>
my-textfield/input 的 JS 文件如下所示:
export default Ember.TextField.extend({});
如果我使用 ID 为 {{my-textfield id="rawr"}} 的组件,我会得到以下输出:
<div>
<input id="rawr" class="ember-text-field ember-view">
<span class="ember-view" for="rawr"></span>
</div>
如果我没有将 ID 传递给我的组件 {{my-textfield}},Ember.TextField 将生成它自己的 ID。
<div>
<input id="ember3972" class="ember-text-field ember-view">
<span class="ember-view" for></span>
</div>
我正试图在生成 ID 时,将 span 中的 for 属性更新为相同的值。
我希望它会自动发生,因为它们都指向我组件上的相同属性。但既然没有,我一直试图弄清楚如何将它们绑定在一起一段时间。我发现了 mut 助手并尝试使用它:
<div>
{{my-textfield/input id=(mut id)}}
{{my-textfield/label for=id}}
</div>
但这没有用。这只是让我在每个组件中的所有 ID 都相同。
我需要在这里做什么才能完成这项工作?
【问题讨论】:
-
我提供的答案对您没有帮助吗?
标签: javascript ember.js data-binding