我是新来Redux的观测:https://github.com/redux-observable/redux-observableRedux Observables:对于相同的动作,但不同的过滤器,分开史诗?
我有一个简单的例子,我想这样做基于用户的signedIn
状态2个不同的东西。
- 如果登录,添加RSVP
- 如果没有登录,模态
显示标志我在app/redux/epics/addRSVP.js
文件中有这样的:
import 'rxjs';
import * as scheduleActions from '../ducks/schedule';
export default function searchUsers(action$, store) {
return action$.ofType(scheduleActions.ADD_RSVP)
.filter(() => store.getState().user.signedIn)
.map(action => scheduleActions.rsvpAdded(action.payload));
};
我的问题是,应该我正在为注销的用例创建另一个app/redux/epics/preventRSVPIfNotSignedIn.js
史诗?是这样的:
import 'rxjs';
import * as authenticationActions from '../ducks/authentication';
export default function searchUsers(action$, store) {
return action$.ofType(scheduleActions.ADD_RSVP)
.filter(() => !store.getState().user.signedIn)
.map(action => authenticationActions.show());
};
或者有没有办法我可以把两者都放在同一个文件中?我觉得如果它是前者,它最终会成为很多史诗。知道一般惯例是什么会很棒。