nuxt.js - Nuxt vuex 商店未收到 axios 请求

标签 nuxt.js vuex-modules

已安装 Nuxt axios 模块并在 index.js 文件中工作,但是当我清空 index.js 文件并分离到其自己的模块文件 (team.js) 中时,它不起作用。

团队.js

export const state = () => ({
  teams: {},
})

export const mutations = {
  SET_TEAMS (state, value) {
    state.teams = value
  }
}

export const actions = {
async nuxtServerInit ({ commit }) {
  let {data} = await this.$axios.$get(`team`)
  commit('SET_TEAMS', data)
}

在 Vue 开发工具中它显示为 - 团队:对象 团队:对象(空) 拥有 Vuex 模块的正确方法是什么?我见过的文档和其他项目应该可以工作

最佳答案

根据我的评论和来源建议,您的 store/teams.js 文件可以拥有自己的 nuxtServerInit;但您可以将其命名为任何您想要的名称,因为您需要从主模块 (store/index.js) 显式分派(dispatch)它。


store/teams.js

export const actions = {
  async nuxtServerInit({ commit }) {
    let {data} = await this.$axios.$get(`team`)
      commit('SET_TEAMS', data)
    }
  }
}

store/index.js

export const actions = {
  async nuxtServerInit({ dispatch }) {
    dispatch('teams/nuxtServerInit')
  }
}

关于nuxt.js - Nuxt vuex 商店未收到 axios 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52877232/

相关文章:

nuxt.js - 为什么我在查看源代码中看到 vuetify css?

vue.js - 'Nuxtjs SPA mode'和 'Vuejs without Nuxtjs'的区别

vue.js - VueJS router.push 不更新页面内的数据

javascript - Vuex 在通过开发工具手动提交之前不会提交更改

webpack - Webpack HMR 如何与 Vuex 模块交互?

javascript - Store 无法动态注册动态导入的模块

javascript - 如何在 Store 中使用 Vue 插件?

vue.js - 有没有办法在 Nuxt 中 Hook 页面重新加载?

google-maps - nuxt-gmaps 动态添加边界

vue.js - 如何在计算属性中调用 getter