我的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资源工作得很好。