v-on:model =“form.email”需要一个函数值,未定义

时间:2018-01-20 13:02:39

标签: vue.js

Vue.js 2 - 我试图绑定表单输入,但我总是得到错误消息(在所有输入上..)

v-on:model="form.email" expects a function value, got undefined


                        <form id="registrationForm">
                            <div class="form-group">
                                <input type="email" name="email" id="email" @model="form.email" placeholder="enter your email address">
                            </div>
                            <button @click="sendRegistration" type="submit" class="btn btn-primary btn-gradient submit">SEND</button>
                        </form>

和脚本

 data: function() {
    return {
        form: {
            ...
            email: '',
            ...
        }
      }
  },
  methods: {
    sendRegistration: function() {
        console.log('sending form')
        return false
    }
},

1 个答案:

答案 0 :(得分:0)

你得到了一些混乱的东西。以v-on:开头的属性(通常缩写为@)用于在元素上注册事件侦听器。例如,@click="sendRegistration"会将sendRegistration实例上定义的Vue方法注册为该元素的click事件的处理程序。

您要完成的任务与事件处理无关。您需要的属性称为v-model,并将<input>的值绑定到Vue实例上保存的值。

<input type="email" name="email" id="email" @model="form.email">

应该是

<input type="email" name="email" id="email" v-model="form.email">