繁体   English   中英

Vue.js 没有设置数据

[英]Vue.js not setting data

我正在尝试使用 Laravel 5.3 和 Vue.js 进行一些简单的表单验证。

Laravel 控制器:

 public function test(\Illuminate\Http\Request $request)
    {
        $this->validate($request, [
            'name' => 'required',
            'date' => 'required'
        ]);
...
    }

Vue数据:

let app = new Vue({
        el: '#app',

data: {
        submitted: false,
        errors: [],
        post: {
               name: '',
               date: '',
              },
},

Vue帖子:

Vue.http.post('url', post).then((response) => {
    // form submission successful, reset post data and set submitted to true
    app.post = {
        name: '',
        date: '',
    };

    // clear previous form errors
    app.$set('errors', '');

    app.submitted = true;

}, (response) => {
    // form submission failed, pass form  errors to errors array
    console.log(response.data.name); //"The Name field is required."
    app.$set('errors', response.data); // TypeError
});

我越来越

TypeError:无法分配给(新字符串(“错误”))的属性:不是对象

app.$set('errors', response.data);

我哪里错了?

检查vm.$set(object, key, value) ,您正在尝试使用response.data作为键向字符串'errors' 添加属性。

正确的语法是app.$set(app, 'errors', response.data)app.errors = response.data应该同样有效。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM