Vue没有提供实现AJAX的正式方法,而且有许多不同的设计模式可以有效地使用。每种方法都有其优缺点,应该根据需求进行判断。您甚至可以同时使用多个!
在本文中,我将向您展示在Vue应用程序中实现AJAX的四个地方:根实例
组件
Vuex行动
路线导航警卫
我将解释每种方法,给出一个例子,并讨论其优缺点。
1、根实例
使用这种体系结构,您可以从根实例发出所有AJAX请求,并将所有状态存储在根实例中。如果任何子组件需要数据,它将作为辅助。如果子组件需要刷新数据,将使用自定义事件提示根实例请求它。
例子:new Vue({
data: {
message: ”
},
methods: {
refreshMessage(resource) {
this.$http.get(‘/message’).then((response) {
this.message = response.data.message;
});
}
}
})
Vue.component(‘sub-component’, {
template: ‘