Vue.js v-model绑定问题

时间:2018-01-28 14:44:14

标签: vuejs2

我正在尝试访问submit事件中的输入。密码的值未定义。

<template>
  <div class="hello">
    <p>{{ msg }}</p>
    <input type="text" v-model="password">
    <button v-on:click="submit()">Submit</button>
  </div>
</template>

以下是剧本。

<script>
export default {
  data () {
    return {
      msg: 'Welcome to Your Vue.js App',
      password: ''
    }
  },
  methods: {
    submit: () => {
      console.log('submitted')
      console.log(this.password)
    }
  }
}
</script>
当我尝试登录到控制台时,

this.password未定义。

1 个答案:

答案 0 :(得分:1)

您应该在methods中使用常规函数而不是胖箭头函数 例如:

 methods: {
     submit() {
         console.log('submitted')
         console.log(this.password)
     }
 }

 methods: {
     submit: function() {
         console.log('submitted')
         console.log(this.password)
     }
 }

请参阅此处的说明:https://vuejs.org/v2/guide/instance.html#Instance-Lifecycle-Hooks