我正在使用Redux处理一些异步操作。在Redux GitHub文档中,他们建议的方法之一是定义以下三个操作。
{ type: 'FETCH_POSTS_REQUEST' }
{ type: 'FETCH_POSTS_FAILURE', error: 'Oops' }
{ type: 'FETCH_POSTS_SUCCESS', response: { ... } }
参考:https://github.com/reactjs/redux/blob/master/docs/advanced/AsyncActions.md
在我的项目中,收到错误后,我会显示一条消息几秒钟,然后通过将错误重置为空消失。我在上述方法中发现的问题是他们使用的是像SUCCESS和FAILURE这样的动词,如果我使用它会使它变得奇怪
{ type: 'FETCH_POSTS_FAILURE', error: '' }
重置错误,因为命名建议它应该发送错误。另一种方法是我定义另一个动作
{ type: 'FETCH_POSTS_ERROR_RESET' }
但是使用这个我必须引入2个动作,如
{ type: 'FETCH_POST_DATA_EMPTY' }
{ type: 'FETCH_POST_ERROR_RESET' }
还有其他更好的方法可以解决这个问题吗?使用像SUCCESS和FAILURE这样的动词而不是FETCH_POST_SET_DATA或FETCH_POST_SET_ERROR是否有任何理念?