gpt4 book ai didi

firebase - 在 vuex 操作中访问 this.$fireStore (Nuxt.js)

转载 作者:行者123 更新时间:2023-12-02 19:36:14 25 4
gpt4 key购买 nike

Here据说可以在 vuex action 中访问 $fireStore:

async randomVuexAction({ commit, state, rootState }, userId) {
const ref = this.$fireStore.collection('users').doc(userId)
...
}

问题:store/index.js 中触发操作后:

addItem: ({ commit, getters }, itemName) => {
const item = { name: itemName }
this.$fireStore.collection('items').add(item).then((res) => {})
}

我收到错误:无法读取未定义的属性“$fireStore”。一般来说,除 nuxtServerInit() 之外的所有操作中的 console.log(this) - 都会给出 undefined。那么是否有可能在 vuex 中使用 $fireStore 或者文档具有误导性?

最佳答案

尝试删除您的操作的箭头符号(因为“this”与箭头符号所指的不是同一件事),即

addItem ({ commit, getters }, itemName) {
const item = { name: itemName }
this.$fireStore.collection('items').add(item).then((res) => {})
}

注意:这同样适用于 Vue 组件中的计算属性和方法。遵循文档,不要为了改变而改变。

关于firebase - 在 vuex 操作中访问 this.$fireStore (Nuxt.js),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61020632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com