Ember的默认{{input}}
助手会创建双向绑定。什么是创建仅单向绑定的输入元素的最先进方法?
Google搜索" ember单向输入"产生几个附加组件:
但是我需要一个附加组件吗?
答案 0 :(得分:2)
最简单的方法是使用普通的html <input>
代替{{input}}
帮助器:
<input value={{foo}} />
如果您想触发对更改的操作:
<input value={{foo}} onchange={{action 'changeFoo' value="target.value"}} />
这是单向绑定,并按预期工作。
答案 1 :(得分:1)
我相信你可以在oneWay()
助手的帮助下实现这一目标。请检查以下链接。
https://www.emberjs.com/api/classes/Ember.Binding.html#toc_one-way-bindings https://guides.emberjs.com/v2.13.0/object-model/bindings/#toc_one-way-bindings
来自ember指南的示例代码,
user = Ember.Object.create({
fullName: 'Kara Gates'
});
UserComponent = Ember.Component.extend({
userName: Ember.computed.oneWay('user.fullName')
});
userComponent = UserComponent.create({
user: user
});
// Changing the name of the user object changes
// the value on the view.
user.set('fullName', 'Krang Gatessss');
// userComponent.userName will become "Krang Gatessss"
// ...but changes to the view don't make it back to
// the object.
userComponent.set('userName', 'Truckasaurus Gates');
user.get('fullName'); // "Krang Gatessss"
答案 2 :(得分:0)
input helpers
默认使用双向绑定。
实现单向行为有不同的替代方案:
答案 3 :(得分:0)
单向绑定不需要插件 - https://www.emberjs.com/api/classes/Ember.computed.html#method_oneWay
但我说我发现https://github.com/DockYard/ember-one-way-controls在日常发展中非常有用。