javascript - Redux Saga 观察者差异

标签 javascript reactjs redux react-redux redux-saga

这个 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 似乎不起作用。但是不知道有没有关系。

最佳答案

takeEverytakeLatest 已经在内部使用了 fork,因此没有必要将它包装在另一个 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)
  ]);
}

关于javascript - Redux Saga 观察者差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51065796/

相关文章:

javascript - html2canvas 的图标问题

javascript - 类型错误:targetItem.push 不是函数

javascript - 当参数作为对象发送时,为什么 Node 服务器不读取 React 中的 axios post ?

javascript - 我如何告诉 Prettier 忽略 package.json 文件?

javascript - 创建后立即自动提交 ReactJS 表单

reactjs - Jest 设置 "SyntaxError: Unexpected token export"

javascript - react : How to access component refs from Redux/Flux actions?

javascript - JavaScript 中特定于区域设置的小写/大写字符串操作

javascript - Bootstrap : how to check if an elment is checked and set it to disable if checked

javascript - 犀牛与蜘蛛猴