Javascript Vue.js未设置数据

Javascript Vue.js未设置数据,javascript,vue.js,laravel-5.3,Javascript,Vue.js,Laravel 5.3,我正在尝试使用Laravel5.3和Vue.js进行一些简单的表单验证 拉威尔控制器: public function test(\Illuminate\Http\Request $request) { $this->validate($request, [ 'name' => 'required', 'date' => 'required' ]); ... } Vue数据: l

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

拉威尔控制器:

 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 post:

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)

哪里出错了?

检查,您试图使用
response.data
作为键向字符串“errors”添加属性

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

检查,您正在尝试使用
response.data
作为键向字符串'errors'添加属性


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

触发
Vue.http.post
的方法是什么<代码> > vu.http是全局用法,有一个<代码>。$http.POST <代码>,它指的是VUE实例,所以请考虑正确的用例。BTW这个承诺看起来有点怪怪的,第二个方法是接受响应吗?@ BelminBedak,<代码>这个。$HTP.POST <代码>产生相同的结果。好吧,这里有什么承诺?履行承诺时可能有两种情况
.then()
,出现问题时可能有两种情况
.catch()
。带参数响应的第二种方法是什么?触发
Vue.http.post的方法是什么样的<代码> > vu.http是全局用法,有一个<代码>。$http.POST <代码>,它指的是VUE实例,所以请考虑正确的用例。BTW这个承诺看起来有点怪怪的,第二个方法是接受响应吗?@ BelminBedak,<代码>这个。$HTP.POST <代码>产生相同的结果。好吧,这里有什么承诺?当承诺实现时,可能有两种情况
.then()
,当出现问题时,可能有两种情况
.catch()
。第二种参数响应方法会做什么?啊!我最初使用的是
this
其中不需要对象:
this.$set('errors',response.data)
感谢您的澄清。两者(它们是一样的)都要求将目标对象作为第一个参数传递。您是对的。。。看起来是从v0.12
obj.$set(key,value)
Ah!我最初使用的是
this
其中不需要对象:
this.$set('errors',response.data)
感谢您的澄清。两者(它们是一样的)都要求将目标对象作为第一个参数传递。您是对的。。。看起来是从v0.12
obj.$set(键,值)