我正在使用vuexfire将我的vue/vuex应用程序连接到Firebase。当实际连接到Firebase时,它工作得很好。当使用Firebase模拟器时,它不起作用。
是否有特定的方式来连接Firebase模拟器以允许Vuexfire连接?
最有效的是
vue-cli-service serve然后打开一个新的终端并运行
firebase emulators:start --import=./saved-data --export-on-exit我将firebase.json中的设置更改为
"emulators": {
"firestore": {
"port": 8081
},以防止防火墙仿真器与vue-cli dev服务器之间的冲突。
但是控制台给了我这个错误:
Uncaught (in promise) FirebaseError:
false for 'get' @ L6下面是火基初始化:
firebase.initializeApp(firebaseConfig)
const auth = firebase.auth()
const db = firebase.firestore()
const func = firebase.functions()
const emulating = true
if (emulating) {
func.useEmulator('localhost', 5001)
//auth.useEmulator('http://localhost:9099/')
db.useEmulator('localhost', 8081)
}而Vuex代码(我认为)导致了错误:
bindProfile: firestoreAction(({ bindFirestoreRef, state }) => {
const pid = state.user.uid
console.log('Binding profile...')
return bindFirestoreRef('profile', db.collection('profiles').doc(pid))
}),是否有人在Firebase模拟器中成功地使用了Vuexfire?
谢谢!
发布于 2022-03-22 10:54:38
对我来说,它的工作方式是在db.useEmulator('localhost',8081)之前调用‘bindFirestoreRef’
即
bindProfile: firestoreAction(({ bindFirestoreRef, state }) => {
const pid = state.user.uid
console.log('Binding profile...')
db.useEmulator('localhost', 8081) // dev mode
return bindFirestoreRef('profile', db.collection('profiles').doc(pid))
}),https://stackoverflow.com/questions/66191435
复制相似问题