大家是怎么处理一个页面里面有很多的交互,每次dispatch请求的时候都会有不同的isrequest,我会根据isreques来显示loading组件,感觉就不好管理了,还有如果正在请求的时候,用户点击返回按钮了,这个isrequest的状态怎么还原呢?
大家是怎么处理一个页面里面有很多的交互,每次dispatch请求的时候都会有不同的isrequest,我会根据isreques来显示loading组件,感觉就不好管理了,还有如果正在请求的时候,用户点击返回按钮了,这个isrequest的状态怎么还原呢?
saga写的,可以控制住流程
function* getProjectList() {
while(true) {
yield take(actions.GET)
yield put(actions.setLoading(true))
const data = yield call(serverAPI.getProjectList)
yield put(actions.setLoading(false))
yield put(actions.setProjectList(data))
}
}
3 回答1.8k 阅读✓ 已解决
1 回答1.6k 阅读✓ 已解决
4 回答1.6k 阅读✓ 已解决
2 回答2.4k 阅读✓ 已解决
1 回答2.5k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
2 回答1.6k 阅读✓ 已解决
正在请求时,可以根据形如
isLoading
的状态,disable 掉返回等改变状态的按钮。若页面存在多种状态均可打开 Loading 组件,那么可以在 Reducer 中统一维护从这些状态打开 Loading 的逻辑。对 Loading 的关闭逻辑同理。