vuejs无法读取未定义的属性

时间:2016-10-17 09:10:45

标签: javascript laravel vue.js vuejs2

我的vue save方法有问题,我无法弄清楚它是如何正确定义的。我使用Laravel 5,VueJS 2和webpack来编译它。

所以在我的app.js中我有以下内容:

var Vue = require('vue');
var VueRouter = require('vue-router');
var VueResource = require('vue-resource');
import VueSweetAlert from 'vue-sweetalert';

Vue.use(VueRouter);
Vue.use(VueResource);
Vue.use(VueSweetAlert);

const router = new VueRouter({
    hashbang: false,
    history: true,
    linkActiveClass: 'active',
    mode: 'hash',
    saveScrollPosition: true,
    transitionOnLoad: true,
    routes: routes
})

const app = new Vue({
    router
}).$mount('#app')

在我的createLocation.vue中,我有以下代码:

methods:{
  onSubmit: function(e){
    var self = this;
    e.preventDefault();

    var formData = {
        name: self.vmName,
        street: self.vmStreet,
        street_number: self.vmStreetNumber,
        postal: self.vmPostal,
        city: self.vmCity,
        contactName: self.vmContactName,
        contactPhone: self.vmContactPhone,
        contactEmail: self.vmContactEmail,
        username: self.vmUsername,
        password: self.vmPassword
    };

    self.resource.get(formData).then((response) => {
        self.$swal('Gelukt', 'Location added!', 'success').then(function() {
            self.$route.router.go('/locations');
        });
    }, (response) => {
        var errorMessage = '';
        $.each(response.data, function(k, v) {
            errorMessage = errorMessage + v[0] + '<br/>';
        });
        self.$swal('Oops...', errorMessage, 'error');
    })
  }
}

然而,每当我按下提交按钮时,我都会收到:

Uncaught TypeError: Cannot read property 'save' of undefined

但我不知道为什么现在发生这种情况? 我在我的仪表板上有一个类似的get请求,它运行得很好,所以我可以确认vue router和vue资源工作得很好。

0 个答案:

没有答案