vue.js:每次按键时都没有触发输入

jig*_*zon 1 vue.js

我有一个input模型属性正在观看.问题是Chrome Android设备中的每次按键都不会调用watch方法.如果我点击输入文本,则会调用它.它确实在过去有效,我不知道发生了什么.在Chrome桌面上它可以工作(即:每次按键都会调用watchfor text).

输入:

  <input id="input-message" ref="input-message" :disabled="disabled"
  @focus="$emit('focus')" @keyup.enter="sendMessage" 
  v-model="text" type="text" placeholder="Start typing..." 
  class="form-control">
Run Code Online (Sandbox Code Playgroud)

看:

  watch: {
    disabled: function(val) {
      if (!val) {
        this.$nextTick(() => {
          this.$refs["input-message"].focus();
        });
      }
    },
    text: function(val) {
      var mode = this.micMode;
      if (this.userAgent !== "ios") {
        let isEmpty = val.length === 0;

        if (mode === 1 && !isEmpty) {
          this.micMode = 0;
        } else if (mode === 0 && isEmpty) {
          this.micMode = 1;
        }
      }

    }
  },
Run Code Online (Sandbox Code Playgroud)

Jac*_*Goh 7

对于需要IME(中文,日文,韩文等)的语言,您会注意到在IME合成期间v-model不会更新.如果您也想要满足这些更新,请改用输入事件.

https://vuejs.org/v2/guide/forms.html#vmodel-ime-tip

您可以更改v-model="model":value="text" @input="text = $event.target.value",应按预期触发观察者