如何在 Store Vuex 中加载 DOM 之前调用 api?

Posted

技术标签:

【中文标题】如何在 Store Vuex 中加载 DOM 之前调用 api?【英文标题】:How to call an api before loading the DOM in Store Vuex? 【发布时间】:2021-12-08 13:18:30 【问题描述】:

我想在加载 DOM 之前执行一个函数以从 API 获取数据,我知道在 vue 中它是在 Create 之前,但是我如何在 VUEX 存储中执行它?

【问题讨论】:

不能直接调用store里面的函数吗? 它不起作用 【参考方案1】:

在 VueX 中,您在“actions”中执行异步代码。因此,您创建一个操作并从 beforeCreate 生命周期挂钩或您想放置的任何位置调用它。

要调用一个动作,你可以使用this.$store.dispatch('getMatches') 或者你可以将一个动作映射到你的组件方法块:

methods: 
  ...mapActions([
    'getMatches'
  ])
,
beforeCreate() 
  this.getMatches();

通常操作也以小写字母开头,因为它们是方法。

【讨论】:

这样做会给我一个错误,我不知道我是否做错了我这样做:import mapActions from 'vuex'beforeCreate () ... mapActions (['GetMatches']) 您希望将操作映射到 Vue 组件的 methods 对象。我已经更新了我的答案。

以上是关于如何在 Store Vuex 中加载 DOM 之前调用 api?的主要内容,如果未能解决你的问题,请参考以下文章

将参数附加到单击后在 DOM 中加载的 iframe

在 div 中加载外部内容并操作 dom

无法在 ExtJS4 中加载组合存储

如何在 Android Webview 中加载网页之前注入 javascript?

如何在android 7中加载html之前在webview中注入javascript脚本

如何在颤动中加载数据之前显示进度对话框?