【发布时间】:2020-10-25 09:39:23
【问题描述】:
我有一个 VueJS 项目,我需要在页面需要时加载数据。比如,个人资料页面需要用户的信息,约会页面需要用户的约会数据等。
到目前为止我的解决方案:
我正在检查每个组件的 beforeRouteEnter 函数中的数据。如果数据为空,那么我从 vuex 操作加载数据。这是解决这个问题最糟糕的方法,因为代码总是重复自己。
Profile.Vue:
beforeRouteEnter: async (to, from, next) => {
if(!store.state.provinces)
await store.dispatch("getProvinces")
next()
},
约会.vue
beforeRouteEnter: async (to, from, next) => {
if(!store.state.provinces)
await store.dispatch("getProvinces")
next()
},
我的第二个策略: 我想如果我使用吸气剂而不是状态可能会起作用,但是当我使用吸气剂时,现在数据会在路由后加载。
【问题讨论】:
标签: javascript vue.js asynchronous vuex vue-router