redux-saga:用于管理应用程序Side Effect(副作用,异步获取数据,访问浏览器缓存)的库
- 目的:让副作用管理更容易,执行更高效,测试更简单,处理错误更容易
- saga可以比喻成一个应用程序中一个单独的线程,独自负责处理副作用。
- redux-saga是一个redux meddlewear,意味着这个线程可以通过正常的redux action从主应用程序启动,暂停和取消,能访问完整的redux state,也可以dispathch redux action
redux-saga使用ES6的Generator功能,让异步的流程更易于读取,写入和测试。
安装
$ npm install --save redux-saga
# or
yarn add redux-saga
- 示例:
- 假设我们有一个UI界面,在单击按钮时从远层服务器获取一些用户数据
class UserComponent extends React.Component {
...
onSomeButtonClicked(){
const {useID, dispatch} = this.props
dispatch((type: 'USER_FETCH_REQUESTED',payload: {userId}))
}
...
}
未完待续...