获取keyup Vuejs 2的输入值

cla*_*ios 6 vue.js vuejs2

我正在尝试使用Vuejs 2获取keyup的输入值,但总是得到像数据一样的空结果.请参阅下面的代码.

HTML:

<input type="email" @keyup="this.$data.email= $event.target.value" class="form-control" id="email" placeholder="Username (your work email)">
<button type="button" class="btn btn-primary btn-block inactive" @click="submit">Log in</button>
Run Code Online (Sandbox Code Playgroud)

脚本:

data () {
  return {
    email: '',
  }
},
methods: {
  submit () {
    alert(this.$data.email)
  }
}
Run Code Online (Sandbox Code Playgroud)

tha*_*ksd 7

你需要参考email(不this.$data.email):

<input type="email" @keyup="email = $event.target.value" class="form-control" id="email" placeholder="Username (your work email)">
Run Code Online (Sandbox Code Playgroud)

但是,为什么不使用v-model绑定email到输入?

new Vue({
  el: '#app',
  data () {
    return {
      email: '',
    }
  },
  methods: {
    submit () {
      alert(this.email)
    }
  }
})
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.4.2/vue.min.js"></script>
<div id="app">
  <input type="email" v-model="email" class="form-control" id="email" placeholder="Username (your work email)">
  <button type="button" class="btn btn-primary btn-block inactive" @click="submit">Log in</button>
</div>
Run Code Online (Sandbox Code Playgroud)