小编E1-*_*-XP的帖子

RxJS iif参数在不应该被调用的时候被调用

我想使用RxJS的iif实用程序有条件地调度一些操作。问题是即使测试函数返回false,也会调用iif的第二个参数。这将引发错误,并且应用程序立即崩溃。我对RxJS的功能是陌生的,所以我可能一无所知。如果有问题,我将使用connected-react-router软件包。

导出const roomRouteEpic:Epic =(action $,state $)=>
  action $ .ofType(LOCATION_CHANGE).pipe(
    采摘('payload'),
    mergeMap(有效载荷=>
      iif(
        ()=> {
          console.log('NOT LOGGED');
          返回/^\/room\/\d+$/.test(payload.location.pathname); //设为'/ login'
        },
        合并(
          点击(v => console.log('NOT LOGGED TOO')),
          的(
            //立即评估以下状态值
            state $ .value.rooms.list [payload.location.pathname.split('/')[1]]
              ?actions.rooms.initRoomEnter()
              :actions.rooms.initRoomCreate(),
          ),
          的(actions.global.setIsLoading(true)),
        ),
        empty(),
      ),
    ),
  );

rxjs redux-observable

5
推荐指数
2
解决办法
1095
查看次数

标签 统计

redux-observable ×1

rxjs ×1