【发布时间】:2020-07-20 17:06:58
【问题描述】:
基于以下 VueSchool tuto https://vueschool.io/courses/vue-router-for-everyone 我正在尝试使用基于 10 月服务器中找到的应用程序列表的菜单创建 Vue 应用程序。我尝试用从数据库填充的应用程序 [] 替换静态目的地 []。
为此,我使用 Axios 和 Vuex。我可以查询数据,但我花了很多时间试图在应用程序加载时获取它,以创建菜单,然后再显示应用程序......
我有一个 main.js、一个 App.vue 和一个用于显示菜单的 MenuApp.vue 组件。 我的问题是我的 getter 总是在我的突变之前被调用,并且我的应用程序数组在菜单创建时总是空的。
有没有办法在显示我的 vue.js 菜单组件之前正确加载和初始化所有数据???
或者我可以在突变后重新加载我的菜单组件吗?
感谢您的帮助;-)
【问题讨论】:
-
嗯,如果我没记错的话,你使用的是 vuex,所以它应该是
reactive。意味着数据何时从服务器到达并不重要。但是当数据从服务器到达时 vuex 应该更新存储并且您的菜单组件应该使用 vuex 存储显示它。如果它没有显示它那么你应该检查你的 vuex 商店并正确连接它 -
感谢 Hardik,我试图连接到所有应用程序的吸气剂,而不是状态应用程序。它现在可以工作了;-))
-
真的很奇怪。编译后显示工作,但是当我刷新页面时,菜单丢失了。如果我查看 DevTools,我的 vuex 存储仍然包含数据...我需要重新加载我的组件吗?
-
嗯我不确定你存储是否有数据,可能会有一些链接错误,因为存储和组件应该始终处于相同状态。如果 store 有数据,您的组件将永远不会为空。请检查您的商店连接 -> 组件。可能是你有条件地更新东西等
-
谢谢,它似乎与 vuex-persistedstate 的 add 一起工作
标签: vue.js axios vuex octobercms