firestoreConnect 错误:需要收集来构建查询名称
Posted
技术标签:
【中文标题】firestoreConnect 错误:需要收集来构建查询名称【英文标题】:firestoreConnect Error: Collection is required to build query name 【发布时间】:2018-09-24 05:57:49 【问题描述】:我正在尝试将 react-redux-firebase 配置为与 redux-firestore 一起使用。我按照示例设置 from the official Docs 进行操作,直到我使用 react-redux-firebase 中的 firestorConnect 连接组件之前,一切似乎都正常工作。一旦连接的组件安装,我就会收到以下错误:
未捕获的错误:构建查询名称需要收集
这就是我尝试连接组件的方式:
import React, Component from 'react';
import connect from 'react-redux';
import compose from 'redux';
import firestoreConnect from 'react-redux-firebase';
export class TestComponent extends Component
render()
return <div>test</div>;
export default compose(
firestoreConnect(['test']),
connect(state => (
test: state.firestore.ordered.test
))
)(TestComponent);
更新
可以通过以下方式指定集合来解决问题:
firestoreConnect([ collecion: 'test' ])
这很奇怪,因为 official Docs 声明以下内容也应该有效。
import compose from 'redux'
import connect from 'react-redux'
import firestoreConnect from 'react-redux-firebase'
export default compose(
firestoreConnect(['todos']), // or collection: 'todos'
connect((state, props) => (
todos: state.firestore.ordered.todos
))
)(SomeComponent)
我很困惑。
【问题讨论】:
【参考方案1】:我刚刚遇到了同样的错误,在我的情况下,我错过了 firestoreConnect
中的 collection
键。
错误:
export default compose(
firestoreConnect([
projects: 'projects'
]),
connect(mapStateToProps, mapDispatchToProps)
)(Header);
正确:
export default compose(
firestoreConnect([
collection: 'projects'
]),
connect(mapStateToProps, mapDispatchToProps)
)(Header);
【讨论】:
以上是关于firestoreConnect 错误:需要收集来构建查询名称的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 react-redux-firebase 将 'auth' 或 'profile' 对象传递给 firestoreConnect()?