1

我没有成功尝试将 Vuex 状态属性绑定到 FireStore 中的查询集合。我想知道是否有更多经验的人可以为我指明正确的方向。这就是我目前正在做的事情:

在名为 auth 的 Vuex 模块中,我声明以下绑定到 userArticles

export const bindUserArticles = firestoreAction(({ bindFirestoreRef }, id) => {
    return bindFirestoreRef('userArticles', userCollectionRef('articles', id))
  })

这又指向了一种用于查询数据的firebase方法(有效)

export const userCollectionRef = (collectionName, id) => {
  return firestore().collection(collectionName).where("author.idAuthor", "==", id)
}

我正在通过以下方式在我的 Vue 文件中导入和调度该方法

 computed: {
    ...mapGetters('user', ['currentUser']),
},
      methods: {
        ...mapActions('articles', ['bindUserArticles']),
    },
     watch: {
        currentUser () {
          this.bindUserArticles(this.currentUser.id)
        }
      }

因此,当登录时更新 currentUser 时,会触发该方法。该方法被触发并正在发送正确的ID,我已经使用console.log对其进行了测试。没有显示错误。例如,当我尝试修改数据库中现有文章的 idAuthor 时,userArticles 列表不会更新。当我尝试从具有特定 idAuthor 的数据库中添加或删除文章时,列表 userArticles 不会更新。我还尝试将this.bindUserArticles(this.currentUser.id)放在 created() 和 mount() 生命周期中,但无济于事。有人知道我在哪里出错了吗?

提前致谢

4

0 回答 0