0
我正在寻找创建一个文本字段就像使用输入助手,除了它的行为略有不同:它不会更新它绑定的属性直到按下回车键。我延长了组件,并试图重写可能会更新属性为这样的功能:ember.js:扩展Ember.TextField并只更新输入密钥的值属性
InputTextSoftComponent = Ember.TextField.extend(
keyPress:->
console.log("keypress")
propertyDidChange:->
console.log('propChange')
didInsertElement:->
console.log('insert')
modelChangedValue:->
console.log('changeval')
)
组件工作就像一个普通的文本字段现在,这令我感到惊喜与
{{input-text-soft id="height-input" class="position-inputs" type="text" value=controller.activeRegion.width}}
然而,我无法停止更新值目标文本字段中的更改。我怎样才能防止这种情况,并实现一种软绑定,以便输入只更新输入密钥的属性?我正在寻找特定于Ember CLI的解决方案和组件的使用。
我试图避免这一点,所以我不必为组件外的每个输入创建'脏'变量。可推测我将不得不复制值activeInition.width并将其放在另一个变量newWidth中,是否正确? – 2015-04-04 17:48:18
哦,也许我可以把组件绑定到一个中间变量,它被初始化为realValue的值,所以我不必在 – 2015-04-04 17:52:16
中传递值,当然你可以用任何你想要的值初始化newValue。但将textfield值绑定到属性,将会使该属性发生更改。所以除了创建一个不同的属性,如果你不想要改变原来的属性,没有别的办法。 – 2015-04-04 21:59:50