【问题标题】:vuexfire firestoreAction, binding with argvuexfire firestoreAction,与 arg 绑定
【发布时间】:2019-11-05 15:56:50
【问题描述】:

我正在尝试将我的模块存储绑定到文档

import Vue from 'vue'
import { db } from '../my-firebase/db'
import { firestoreAction } from 'vuexfire'

export const user = {
   ...
    actions: {
        logOutUser: ({ commit }) => {
            commit('logOutUser')
        },
        logInUser: ({ dispatch, commit }, userInfo) => {
            let dbRef = db.collection('users').doc(userInfo.uid)
            dbRef.update({ authInfo: userInfo })
                .then(() => {
                    commit('logInUser', userInfo)
                })
            dispatch('bindFirebaseUser', dbRef)
        },
        bindFirebaseUser: (context, userRef) => {
            console.log('Running dispatch BindFirebaseUser')
            return firestoreAction(({ bindFirestoreRef }) => {
                // return the promise returned by `bindFirestoreRef`
                console.log('userRef:')
                console.log(userRef)
                return bindFirestoreRef('firebaseData', userRef)
            })
        }
    }
}

它不工作。我如何 bindFirestoreRef 使用参数 userRef?它似乎没有绑定,虽然我可以正确地写入 firestore,所以我会假设我的数据库设置正确。

它只是没有给出任何形式的错误,但如果它绑定,它应该用我错误的数据填充我的商店,不是吗?

【问题讨论】:

  • 我也有同样的问题...

标签: firebase vue.js google-cloud-firestore vuex


【解决方案1】:

您可以将引用作为第二个参数传递给 firestoreAction

bindFirebaseUser: firestoreAction(({ bindFirestoreRef }, userRef) => {
   return bindFirestoreRef('firebaseData', userRef)
})

【讨论】:

    猜你喜欢
    • 2021-11-08
    • 2021-03-16
    • 2020-12-20
    • 2020-07-20
    • 2017-03-18
    • 1970-01-01
    • 1970-01-01
    • 2013-02-13
    • 1970-01-01
    相关资源
    最近更新 更多