首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不使用Firebase仿真程序的vuexfire

不使用Firebase仿真程序的vuexfire
EN

Stack Overflow用户
提问于 2021-02-14 00:50:26
回答 1查看 230关注 0票数 0

我正在使用vuexfire将我的vue/vuex应用程序连接到Firebase。当实际连接到Firebase时,它工作得很好。当使用Firebase模拟器时,它不起作用。

是否有特定的方式来连接Firebase模拟器以允许Vuexfire连接?

最有效的是

代码语言:javascript
复制
vue-cli-service serve

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

代码语言:javascript
复制
firebase emulators:start --import=./saved-data --export-on-exit

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

代码语言:javascript
复制
"emulators": {
    "firestore": {
      "port": 8081
    },

以防止防火墙仿真器与vue-cli dev服务器之间的冲突。

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

代码语言:javascript
复制
Uncaught (in promise) FirebaseError: 
false for 'get' @ L6

下面是火基初始化:

代码语言:javascript
复制
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代码(我认为)导致了错误:

代码语言:javascript
复制
bindProfile: firestoreAction(({ bindFirestoreRef, state }) => {
  const pid = state.user.uid
  console.log('Binding profile...')
  return bindFirestoreRef('profile', db.collection('profiles').doc(pid))
}),

是否有人在Firebase模拟器中成功地使用了Vuexfire?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2022-03-22 10:54:38

对我来说,它的工作方式是在db.useEmulator('localhost',8081)之前调用‘bindFirestoreRef’

代码语言:javascript
复制
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))
}),
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66191435

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档