如何从nuxtjs商店访问路由器?

时间:2021-03-05 00:48:12

标签: vuex vue-router nuxtjs

我试过了,但只收到一条错误消息

未找到此相关模块:
* ./router in ./store/index.js

// Ran with yarn dev
import router from './router'

export const state = () => ({
  authenticated: false,
})

export const mutations = {
  toggleLogin(state, loginStatus, path) {
    state.authenticated = loginStatus
    if (loginStatus) {
      router.push(path)
    } else {
      router.push('login')
    }
  },
}

我的商店路径是 store/index.js

1 个答案:

答案 0 :(得分:0)

Vuex 的突变和 getter 无法访问 Vue 上下文。只有行动。

此外,您不能像那样导入 Nuxt 路由器。您要导入的文件是什么?

我建议采取行动:

export const actions: {
  toggleLogin({ commit }, payload) {
    this.app.router.push('') //exists
  }
}