为什么我的代码从输入中接收到空值或空值?

时间:2019-06-23 09:32:37

标签: vue.js ionic-framework

目前,我正在使用Vue(具有Vue的先前知识)学习Ionic,我正在做一些基本活动,并试图将输入中的值传递给javascript端,并在警报或内部显示输入文本或值。控制台,但是当我调用执行该操作的方法时,由于输入字段为空,因此我只会得到一个空字符串或空字符串。

我使用的是Ionic 4和Vue.js,过去我只使用Vue,而在这类事情上没有问题。

<template>
  <div>
    <ion-item>
      <ion-label position="floating">Floating Label</ion-label>
      <ion-input v-model="input" @keyup.enter="show"></ion-input>
    </ion-item>
  </div>
</template>
<script>
  export default {
    data() {
      return {
        input: ""
      }
    },
    methods: {
      show() {
        alert(this.input)
      }
    }
  }
 </script>

我希望输出的值与输入的值相同,但是在控制台中,我会得到一个空白或空字符串。

1 个答案:

答案 0 :(得分:0)

将警报放在$nextTick块中,以确保模型更新。在更新发生之前会触发keyup事件。

vue中,您还可以添加watch。比使用键绑定要好得多。

watch:{
 input(value){
  alert(value);
 }
}

如果仅希望使用enterblur上的值,请在v模型上使用lazy修饰符。