在我的输入助手中,
{{input type="text" value=model.name enter=(action (action
'sampleFunction' model))}}
当我更改表格中的值时,我想将值单独发送给操作。但是,model.name也正在更改。
我该怎么做,以使仅“值”改变而模型不改变?
答案 0 :(得分:4)
答案在某种程度上取决于您的Ember版本。如果您的Ember> = 2.3.1,那么我建议您本机使用<input>
:
<input value={{password}} oninput={{action 'setPassword' value="target.value"}} />
采取行动:
actions: {
setPassword(val){
if(/* only update on some condition */){
this.set('password', val);
}
this.updatePasswordsMatch2();
}
}
value
是呈现的内容,操作的参数是字段+最后键入的char中的内容。
如果您是Ember 1.13x <=> 2.3.0,那么请看一下Ember One way controls,它利用了glimmer直接使用<input>
的能力。您需要使用该库,因为有一种解决方法,直到2.3.1才解决一些光标跳转问题。
如果您的<1.13x,请升级?如果您确实是,请回击,我会尽力考虑一下
答案 1 :(得分:1)
答案 2 :(得分:0)
{{input type =“ text” value = model.name oninput =(action'sampleFunction'model.name)}}