【问题标题】:Redux Saga watcher differencesRedux Saga 观察者差异
【发布时间】:2018-06-27 14:49:20
【问题描述】:

这个 Sagas 观察者有什么区别:

export function* authWatcher() {
  yield [
    takeLatest(GET_USER_START, getUser),
    takeLatest(EDIT_USER_START, editUser),
    takeLatest(FORGOT_PASSWORD_START, forgotPassword),
    takeLatest(LOGOUT_START, logout)
  ];
}

和:

export function* authWatcher() {
  yield fork(takeLatest, GET_USER_START, getUser);
  yield fork(takeLatest, EDIT_USER_START, editUser);
  yield fork(takeLatest, FORGOT_PASSWORD_START, forgotPassword);
  yield fork(takeLatest, LOGOUT_START, logout);
}

起初,他们也这样做,但我不知道哪种方法是最好的方法。有没有更好的办法?

我看到的另一件事 takeLatest 似乎不起作用。但不知道有没有关系。

【问题讨论】:

    标签: javascript reactjs redux react-redux redux-saga


    【解决方案1】:

    takeEverytakeLatest 已经在内部使用fork,因此不需要将其包装在另一个叉子中。

    在较新的 redux-saga 版本中不推荐使用产生一系列效果。请改用all 效果。

    export function* authWatcher() {
      yield all([
        takeLatest(GET_USER_START, getUser),
        takeLatest(EDIT_USER_START, editUser),
        takeLatest(FORGOT_PASSWORD_START, forgotPassword),
        takeLatest(LOGOUT_START, logout)
      ]);
    }
    

    【讨论】:

      猜你喜欢
      • 2015-06-01
      • 2017-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-20
      • 2023-04-10
      • 1970-01-01
      • 2019-03-10
      相关资源
      最近更新 更多