问题标签 [vuexfire]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
nuxt.js - 经典的 Vuex 到模块化:为什么 Getter 现在未定义?
我正在从经典 vuex 迁移到模块化 vuex,但我需要一些帮助来了解如何在我的应用程序中调用 getter。这是我在商店里的东西:
store/user.js
:
当我从我的应用程序调用时,loggedIn
我得到. 我是这样称呼的:loggedIn
undefined
loggedIn
src/components/MainNav.vue
:
有人发现我做错了什么吗?谢谢!
javascript - vuexfire 不适用于 Firebase 模拟器
我正在使用 vuexfire 将我的 vue/vuex 应用程序连接到 Firebase Cloud Firestore。实际连接到 Firebase 时它工作正常。使用 Firebase 模拟器时它不起作用。
是否需要连接 Firebase 模拟器以允许 Vuexfire 连接的特定方式?
最有效的是
然后打开一个新终端并运行
我更改了 firebase.json 中的设置以包含
以防止 firestore 模拟器和 vue-cli 开发服务器之间发生任何冲突。
但是控制台给了我这个错误:
这是firebase初始化:
以及(我认为)导致错误的 Vuex 代码:
有没有人成功使用 Vuexfire 和 Firebase 模拟器?
谢谢!
vue.js - 如何从 Vuex 中的不同命名空间模块访问 rootGetters?
我有一个名为“表单”的 Vuex 模块。我有一个名为“用户”的不同(也是命名空间)模块。
我正在使用 Vuexfire(第一次,我认为这是让我绊倒的原因)。并有一个像这样工作的动作:
这可以按预期工作,并在 Firestore 和 Vuex 之间创建实时连接。问题是我希望“iTd865JKWXRmhz2D2mtW7KIpL7a2”是从“用户”模块中提取的动态值。
我完全迷路了。如果我这样重构:
上面的 console.log 返回“未定义”。即使我删除了.where('submittedToUID', '==', uid)
, firestoreAction 也不起作用。
提前致谢。我很想知道我在这里不明白什么。
firebase - Nuxt this.$route 未定义
我有一个名为 products/_id 的动态路由,它应该从 Firestore 加载产品。我正在使用 VueFire 从 Firebase 数据库中获取产品。获取整个产品集合非常好。
但是获取具有特定 id 的文档是麻烦的开始。通常我会打电话
但现在我收到一条错误消息:“TypeError:无法读取未定义的属性 '$route'”。这很奇怪,因为如果我将路由记录到控制台,我实际上可以看到 id。此外,调用 ".doc("DOCUMENT_ID") 工作得很好。
任何人都知道如何解决这个问题?我尝试了结合使用方法和挂载的钩子来检索 id 但无济于事。
带来同样的错误......
javascript - Vue、Firebase、Vuexfire:如何跟踪当前用户?
我正在使用 vue 和 vuex 构建一个应用程序并将其连接到 Firebase,如下所示:
然后我导入auth
和使用createUserWithEmailAndPassword
,signInWithEmailAndPassword
并signOut
注册、登录和注销用户。
我现在要做的是跟踪谁登录并显示他们的电子邮件地址(例如)。我了解到我可以使用onAuthStateChanged
like
但是我把这个放在哪里?以及如何使user
变量在整个应用程序中可用?
我虽然将它保存到 vuex,但我从未见过这个并开始怀疑这是一个好方法。更重要的是,我的突变似乎被阻止了,mutations: vuexfireMutations
以至于user
即使我想也无法将其保存到商店。
感谢您的任何提示!
编辑:发现添加自己的突变vuexfireMutations
是这样的:
javascript - Vuexfire:如何正确绑定来自 Firestore 的数据?
我在 Firestore 中有一些条目,我想将它们加载到 vuex 商店并显示在我的应用程序中。我尝试使用此代码:
店铺:
行动:
突变:
在 App.vue 中
吸气剂:
测试.vue
虽然我至少有一个符合条件的条目:
什么都没有显示:
我注意到的事情:
- 如果我没有跳过身份验证,而是登录并重定向到我的条目页面,那么所有条目都会正确显示。
- 如果我从中删除
this.$store.dispatch("bindEntries");
,App.vue
也会出现整体(尽管我认为它们仍然保存在某个地方而不是直接从 firestore 中保存)
我做错了什么,我该如何适应?如果需要,您可以在此处找到完整代码。
非常感谢!
firebase - vuexfire + firestore:如何存储/获取当前页面 DocumentId?
我的用户可以生成存储在posts
firestore 集合中的帖子。当打开单个帖子页面时,我正在使用vuexfire
in 操作绑定当前的帖子文档数据:
由于每个postID
都是唯一的,它总是返回一个可以访问数据的文档this.$store.state.post[0]
。
然后我创建了一个deletePost()
操作,以便用户可以删除当前帖子页面后面的文档(如果他们是作者):
我想知道检索帖子页面的当前 DocumentId 的最佳方法是什么。我想过在文档数据中添加 DocumentId 本身,这样我就可以做到$store.dispatch('deletePost', this.$store.state.post[0].docID)
。
处理这个问题的最佳方法是什么?
javascript - Firestore、vue、vuex、vuexfire:如何让 getter 真正从存储中获取数据?
如果我想使用 Vuexfire 从 Firestore 中查询文档。我可以通过执行以下操作成功地做到这一点:
我可以使用此操作绑定文档:
我像这样在我的 App.vue 中发送:
为了实际获取组件中的数据,我使用了这个 getter
我调用一个计算属性:
到目前为止,一切都很好。
现在我想调整我的代码以不查询 Firestore 中的所有数据,而是针对当前登录的用户进行过滤。我适应firestoreAction
了
并将调度部分移动到用户成功登录的位置。它不在created
. App.vue
created
我移动了它,因为钩子中的用户 ID 是未知的。我这样称呼它:
我没有收到任何错误,但没有显示任何内容。我究竟做错了什么?
我上传了整个代码,以防我忘记提及:https ://github.com/juliangermek/haushaltsbuch
非常感谢!
编辑:我刚刚发现在另一个组件中(在 Stats.vue > MonthOverview.vue >OverallSums.vue 中)一切看起来都很好!
我能看到的唯一区别是我直接重定向到 Entries.vue(我遇到问题的页面),然后以用户身份切换到统计信息。我刚刚在我的路由器中切换了它,我的 Entries.vue 看起来还不错!现在是由于缺少数据而引发错误的统计信息。这怎么解释?
typescript - 我使用 typed-vuex ,没有 nuxt 工作,我无法解决这个错误
我无法解决这个错误。
“typed-vuex”:“^0.2.0”,“@vue/eslint-config-typescript”:“7.0.0”,“typescript”:“~4.1.5”,