使用本机输入的新单向绑定,我试图将数据停止在“ 999”。它似乎限制了一次,然后将其重置为“ 999”,但是绑定丢失了,并且继续不受限制。

<input type="number" value={{count}} oninput={{action "update" value="target.value"}} />


js:

actions: {
  update(value) {
    if (value > 999) {
      this.set('count', 999);
    } else {
      this.set('count', value);
    }
  }
}


旋转显示问题:https://ember-twiddle.com/e4801208572aec5b0548553293a83afd

难道我做错了什么?

链接github问题:https://github.com/emberjs/ember.js/issues/13747

最佳答案

这是因为您的绑定值= {{count}}在模板中。

如果操作更新值,则模板上的计数也会受到影响。

也就是说,对于少于999的所有内容,计数都将与输入相同,但是由keyUp触发的操作也会更改影响值的计数。

我会说这不是单向绑定。

07-24 09:46
查看更多