Firebase TypeError:对象(…)不是index.js上的函数
您好,我在运行代码时在浏览器中遇到此错误: TypeError:对象(…)不是函数 ./src/index.js src/index.js:31 28 | firebaseStateName:“firebase” 29 | } 30 | const initialState={} 31 | const store=createStore(rootReducer,initialState, 32 |撰写( 33 | applyMiddleware(thunk.withExtraArgument({getFirebase,getFirestore})), 34 | reactReduxFirebase(firebase,配置) 我试着使用物件库: 但是仍然没有成功:/ 在我的index.js文件下面Firebase TypeError:对象(…)不是index.js上的函数,firebase,react-redux,google-cloud-firestore,Firebase,React Redux,Google Cloud Firestore,您好,我在运行代码时在浏览器中遇到此错误: TypeError:对象(…)不是函数 ./src/index.js src/index.js:31 28 | firebaseStateName:“firebase” 29 | } 30 | const initialState={} 31 | const store=createStore(rootReducer,initialState, 32 |撰写( 33 | applyMiddleware(thunk.withExtraArgument({
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import * as serviceWorker from './serviceWorker';
import { createStore, applyMiddleware, compose } from 'redux'
import rootReducer from './store/reducers/rootReducer'
import { Provider } from 'react-redux'
import thunk from 'redux-thunk'
import { createFirestoreInstance, reduxFirestore, getFirestore } from 'redux-firestore';
import { ReactReduxFirebaseProvider, reactReduxFirebase, getFirebase } from 'react-redux-firebase';
import fbConfig from './config/fbconfig'
import firebase from 'firebase/app'
import 'firebase/firestore'
import 'firebase/auth'
import 'firebase/storage'
import 'firebase/functions'
firebase.initializeApp(fbConfig);
firebase.firestore();
firebase.storage().ref();
firebase.functions();
const config = {
useFirestoreForProfile:true,
userProfile: 'Klanten',
userFirestoreForProfile: true,
attachAuthIsReady: true,
firebaseStateName: 'firebase'
}
const initialState = {};
const store = createStore(rootReducer,initialState,
compose(
applyMiddleware(thunk.withExtraArgument({ getFirebase, getFirestore })),
reactReduxFirebase(firebase, config),
reduxFirestore(firebase)
)
)
store.firebaseAuthIsReady.then(() => {
const rrfProps = {
firebase,
config: fbConfig,
dispatch: store.dispatch,
createFirestoreInstance
}
ReactDOM.render(<Provider store={store}><ReactReduxFirebaseProvider {...rrfProps}><App /></ReactReduxFirebaseProvider></Provider>, document.getElementById('root'));
serviceWorker.unregister();
})
这就是你的问题所在:
reactReduxFirebase(firebase, config),
reduxFirestore(firebase)
在最新版本中,配置有一些变化,如果您使用的是react V6,则必须使用这些变化
*通过键入以下内容确保安装了最新版本:
npm i --save react-redux-firebase@next
+从'react redux firebase'导入{ReactReduxFirebaseProvider}
+从“redux firestore”导入{createFirestoreInstance}
-从“react-redux firebase”导入{ReactRedux firebase}//已删除
-从“redux firestore”导入{reduxFirestore}//已删除
const store=createStore(
减根剂,
初始状态,
谱写(
-reactReduxFirebase(firebase,rrfConfig),//已删除
-reduxFirestore(firebase)
//applyMiddleware(…中间件)//已删除
)
)
+常数rrfProps={
+火基,
+配置:rrfConfig,
+调度:store.dispatch,
+createFirestoreInstance//(
+
+
);
npm i --save react-redux-firebase@next
+ import { ReactReduxFirebaseProvider } from 'react-redux-firebase'
+ import { createFirestoreInstance } from 'redux-firestore'
- import { reactReduxFirebase } from 'react-redux-firebase' // removed
- import { reduxFirestore } from 'redux-firestore' // removed
const store = createStore(
rootReducer,
initialState,
compose(
- reactReduxFirebase(firebase, rrfConfig), // removed
- reduxFirestore(firebase)
// applyMiddleware(...middleware) // removed
)
)
+ const rrfProps = {
+ firebase,
+ config: rrfConfig,
+ dispatch: store.dispatch,
+ createFirestoreInstance // <- needed if using firestore
+ }
const App = () => (
<Provider store={store}>
+ <ReactReduxFirebaseProvider {...rrfProps}>
<Todos />
+ </ReactReduxFirebaseProvider>
</Provider>
);