处理react-native redux-observable项目(*叹息...)。
在商店的配置上,我似乎有一个错误,但对于我的生活,我不知道为什么。
在加载时获得以下屏幕。

下面是配置文件:(其他的都是标准的)
import { createStore, applyMiddleware } from 'redux'
import thunk from 'redux-thunk'
import logger from 'redux-logger'
import { createEpicMiddleware, ofType, combineEpics } from 'redux-observable'
import { composeWithDevTools } from 'redux-devtools-extension'
import { combineReducers } from 'redux'
import {
registerEmailEpic,
} from './actions'
import {
masterReducer
} from './reducers';
const rootReducers = combineReducers({ masterReducer });
const rootEpics = combineEpics(registerEmailEpic);
const epicMiddleware = createEpicMiddleware();
// App dev + prod middleware.
// The order matters.
let middleware = [
thunk,
epicMiddleware,
combineEpics,
ofType
];
if (__DEV__) {
const reduxImmutableStateInvariant = require('redux-immutable-state-invariant').default();
middleware = [...middleware, reduxImmutableStateInvariant, logger];
} else {
middleware = [...middleware];
}
export default function configureStore() {
const configuredStore = createStore(
rootReducers,
composeWithDevTools(applyMiddleware(...middleware))
);
epicMiddleware.run(rootEpics);
return configuredStore;
}发布于 2018-08-08 22:10:18
这里的商店没什么问题,只是我们这里不需要ofType。
对于其他坚持这样做的人,如果你使用的是TypeScript,你需要像这样导入操作符:
因此,在使用map或debounce之类的东西时,需要按如下方式导入它们:import { mapTo, delay } from 'rxjs/operators';
然后你可以像这样使用它们:
export const registerEmailEpic = (action$: any, state$: any): any => {
return action$.pipe(
ofType('PING'),
delay(1000), // Asynchronously wait 1000ms then continue
mapTo({ type: 'PONG' })
)
}https://stackoverflow.com/questions/51747143
复制相似问题