javascript - 如果页面需要,Vuex API 调用
问题描述
我有一个 VueJS 项目,我需要在页面需要时加载数据。比如,个人资料页面需要用户的信息,约会页面需要用户的约会数据等。
到目前为止我的解决方案:
我正在检查每个组件的 beforeRouteEnter 函数中的数据。如果数据为空,那么我从 vuex 操作加载数据。这是这个问题最糟糕的解决方案,因为代码总是重复自己。
配置文件.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()
},
我的第二个策略: 我想如果我使用 getter 而不是状态可能会起作用,但是当我使用 getter 时,现在数据在路由之后加载。
解决方案
You can simply use created method in your related vue component. You can check this link for more detail: https://vuejs.org/v2/guide/instance.html#Lifecycle-Diagram
推荐阅读
- javascript - Node.js 中的 OAuth1.0 标头
- google-data-studio - 围绕数据工作室构建
- google-bigquery - BigQuery DML 更新是否比联接更好?
- google-cloud-platform - 如何输出创建的资源的属性?
- javascript - 我的 CSS 在 localhost 中运行良好,但在我在线发布应用程序时中断?
- r - 下载非 CRAN 软件包时遇到问题
- python - 我正在尝试在 python 中实现火焰游戏。无法删除所有匹配的字符?
- jquery - 当 aria-expanded 为真时,如何让屏幕阅读器正确说出“按钮已扩展”
- javascript - 等到 for 循环中的所有 Ajax 请求都完成后再继续?
- spring-boot - Rabbit MQ 连接工厂连接到具有 2 个节点但队列名称不同的集群