vuexfire 不适用于 Firebase 模拟器

问题描述

我正在使用 vuexfire 将我的 vue/vuex 应用程序连接到 Firebase Cloud Firestore。实际连接到 Firebase 时它工作正常。使用 Firebase 模拟器时不起作用。

是否有特定方式需要连接 Firebase 模拟器才能允许 Vuexfire 连接?

主要有效的是

vue-cli-service serve

然后打开一个新终端并运行

firebase emulators:start --import=./saved-data --export-on-exit

我将 firebase.json 中的设置更改为包含

"emulators": {
    "firestore": {
      "port": 8081
    },

防止 firestore 模拟器和 vue-cli 开发服务器之间的任何冲突。

但是控制台给了我这个错误

Uncaught (in promise) FirebaseError: 
false for 'get' @ L6

这是 Firebase 初始化:

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))
}),

有没有人成功地将 Vuexfire 与 Firebase 模拟器一起使用?

谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)