出错:firestore.setListeners不是函数。同时将redux-firestore与react-redux-firebase@2.0整合。

时间:2017-11-24 12:24:59

标签: react-native google-cloud-firestore redux-saga react-redux-firebase

  

块引用

PHOTO(点击此处查看错误):出现错误:firestore.setListeners不是函数

  

块引用

我刚刚将redux-saga,redux-firestore与react-redux-firebase @ 2集成。并且工作正常但是当我尝试与其他COMPONENT集成时我得到了这个错误.. 任何解决方案!! 致谢

This is the error white integrating redux-firestore with react-reduc-firebase

代码:

import { compose } from 'redux'
import { connect } from 'react-redux'
// import { getFirestore } from 'redux-firestore';
import {
  firestoreConnect,
  createWithFirebase,
  withFirebase,
  firebaseConnect
} from 'react-redux-firebase'

*******
**etc**
*******

// export default Inventory;
export default compose(
// firestoreConnect([{collection: 'Invetory'}]),
  firebaseConnect(),
  connect(
    ({ firestore }) => ({
      //todos: firestore.ordered.todos,
      firestore
    })
  )
  // connect((state) => ({
  //   auth: state.firestore.auth
  // })
)(Inventory)

1 个答案:

答案 0 :(得分:0)

react-redux-firebase的作者。

看起来您可能没有包含导入Firestore as mentioned in the Firestore section of the react-redux-firebase docs。确保包含来自Firebase的增强器,reducer和import firestore,如下所示:

import { createStore, combineReducers, compose } from 'redux'
import firebase from 'firebase'
import 'firebase/firestore' // add this to use Firestore
import { reactReduxFirebase, firebaseReducer } from 'react-redux-firebase'
import { reduxFirestore, firestoreReducer } from 'redux-firestore'

const firebaseConfig = {}

// react-redux-firebase config
const rrfConfig = {
  userProfile: 'users',
  // useFirestoreForProfile: true // Firestore for Profile instead of Realtime DB
}

// initialize firebase instance
firebase.initializeApp(firebaseConfig) // <- new to v2.*.*

// initialize Firestore
firebase.firestore()

// Add reduxReduxFirebase and reduxFirestore enhancers when making store creator
const createStoreWithFirebase = compose(
  reactReduxFirebase(firebase, rrfConfig),
  reduxFirestore(firebase)
)(createStore)

// Add Firebase and Firestore to reducers
const rootReducer = combineReducers({
  firebase: firebaseStateReducer,
  firestore: firestoreReducer
})

// Create store with reducers and initial state
const initialState = {}
const store = createStoreWithFirebase(rootReducer, initialState)