我正在使用ngrx / effects.我想根据商店中的foo状态调度不同的操作.
这就是我现在正在做的事情:
@Effect() foo1$= this.updates$ .whenAction(Actions.FOO) .filter(obj => !obj.state.product.foo) .map<string>(toPayload) .map(x => ({ type: Actions.BAR1,payload: { x }})); @Effect() foo2$= this.updates$ .whenAction(Actions.FOO) .filter(obj => obj.state.product.foo) .map<string>(toPayload) .map(x => ({ type: Actions.BAR2,payload: { x }}));
有没有办法使用RxJS 5运算符,如partition,groupBy,if,this post中的case?我现在无法正确使用它.
有2个单独的效果源是好的.否则简单:
@Effect() foo$= this.updates$ .whenAction(Actions.FOO) .map(({action,state}) => { if (state.product.foo) { return { type: Actions.CHAT_GET_MESSAGES2,payload: { action.payload }}; } else { return { type: Actions.CHAT_GET_MESSAGES,payload: { action.payload }}; } });
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。