#javascript #reactjs #react-native #react-redux
Вопрос:
Я пытаюсь обратить
react redux
своему коллеге
инструментарий react redux
но я продолжал сталкиваться с этой проблемой
t-это не функция. (В «t(i,c)», «t» является экземпляром объекта)
И я действительно не понимаю, что это значит. Это тот самый configureStore.js
import { configureStore } from '@reduxjs/toolkit'
import { persistStore, persistReducer, FLUSH, REHYDRATE, PAUSE, PERSIST, PURGE, REGISTER,} from 'redux-persist'
import AsyncStorage from '@react-native-community/async-storage';
import { createLogger } from 'redux-logger';
import createSagaMiddleware from 'redux-saga';
//import sagas from 'app/sagas';
import {
loginReducer,
paymentReducer,
signupReducer
} from '../reducer';
const config = {
key: 'root',
storage: AsyncStorage,
blacklist: ['loadingReducer'],
debug: true, //to get useful logging
};
const middleware = [];
const sagaMiddleware = createSagaMiddleware();
middleware.push(sagaMiddleware);
if (__DEV__) {
middleware.push(createLogger());
}
const reducers = persistReducer(config, {reducer:{
loginReducer,
signupReducer,
paymentReducer
}})
const store = configureStore({
reducer: reducers,
middleware: (getDefaultMiddleware) =>
getDefaultMiddleware({
serializableCheck: {
ignoredActions: [FLUSH, REHYDRATE, PAUSE, PERSIST, PURGE, REGISTER],
},
thunk: false,
...middleware
}),
})
let persistor = persistStore(store);
const myStore = () => {
return { persistor, store };
};
export default myStore
//sagaMiddleware.run(sagas);
/*import { configureStore } from '@reduxjs/toolkit'
export const store = configureStore({
reducer: {},
})
в то время как это
App.js
import React from 'react';
import { ActivityIndicator } from 'react-native';
import { Provider } from 'react-redux';
import storage from 'redux-persist/lib/storage'
import { PersistGate } from 'redux-persist/integration/react'
import { DefaultTheme, Provider as PaperProvider } from 'react-native-paper';
import 'react-native-gesture-handler';
import Navigator from './app/navigation';
import myStore from './app/store/configureStore';
import { enableScreens } from 'react-native-screens';
enableScreens();
const { persistor, store } = myStore();
const theme = {
...DefaultTheme,
roundness: 2,
colors: {
...DefaultTheme.colors,
// primary: '#3498db',
// accent: '#f1c40f',
},
};
export default function Entrypoint() {
return (
<Provider store={store}>
<PersistGate loading={null} persistor={persistor}>
<PaperProvider theme={theme}>
<Navigator />
</PaperProvider>
</PersistGate>
</Provider>
);
}
Я не знаю, в чем проблема, но
- Я совершенно уверен, что проблема в скрипте configureStore
- Как мне решить такого рода проблему