pmg1989 / dva-admin

dva admin antd dashboard
https://pmg1989.github.io
MIT License
284 stars 93 forks source link

一个页面,怎样做定时刷新? #27

Closed koupeng closed 7 years ago

koupeng commented 7 years ago

一个页面,怎样做定时刷新?感觉使用setTimeout或setInterval都有问题,,你有什么好的方案么?

pmg1989 commented 7 years ago

为什么会有问题,你用在什么业务场景里的呢

koupeng commented 7 years ago

sorrycc的回复解决了我的问题。 可以在 effect 里写个无限循环,比如:

while (true) { yield fetch(data); yield delay(300); } 然后,你可以需要适时地关闭或者开启他,可以在 state 里加个开关。比如:

while (true) { const enableFetch = yield select(state => state.namespace.enableFetch); if (enableFetch) { yield fetch(data); } yield delay(300); }