我的第一个全栈 Web 应用程序( 九 )
使用mapsStateToProps() , 无需从组件中访问Redux存储 , 就能将状态内容放到props中
使用mapDispatchToProps() , 无需从组件中访问Redux存储 , 就能分发actions 。
这样就可以分离状态管理和状态显示 。 但这并非Redux的全部功能 。 我们在构建异步action creator的时候还是用了thunk中间件 。
什么是中间件?维基百科的解释是“提供系统软件和应用软件之间连接的软件 , 以便于软件各部件之间的沟通” 。 你可以认为中间件就像胶水一样 。 因此 thunk 可以让我们做一些原本做不到的事情 。 thunk 函数的参数是 dispatch , 因此可以在函数中使用 , 在本例中就是在action creator中使用 。 由于dispatch可以在函数内使用 , 我们可以利用这一点 , 仅在fetch请求结束时进行分发 。 如下例所示 , 我们仅在获取所有城市的fetch请求结束后进行分发:
actions/fetchCities.jsexport const fetchCities= () = { return ( dispatch )= { fetch( 'http://localhost:3000/api/v1/cities' ) .then( response = response.json()) .then( cities = { dispatch({ type : 'FETCH_CITIES' payload :cities ) )推荐阅读
- 手机游戏|LOL手游第一个世界赛,破晓杯火热开战,DKG能紧随EDG夺冠吗?
- 我的世界|《我的世界》领衔!推荐9款低配置、超耐玩的游戏神作
- 我的世界|我的世界:主世界玩腻了?赶紧把这几个模组加入下载行列!
- 我的世界|我的世界:这些莫名其妙的设定,看起来不合理,实际却是彩蛋!
- 抖音|正在火热追我的富二代,在得知我生日后突然消失不见,到底为什么
- vg战队|我的世界:没能“活着”走出测试版本的设定,一块肉占一格空间!
- 拉克丝|嘘,我在为我的激光充能
- 我的世界|我的世界:6个“友尽”的小技巧,不要轻易在好友的服务器尝试!
- 我的世界|我的世界:“最奢侈”的附魔是什么?我给胡萝卜钓竿打上经验修补
- 原神|原神:第一个让人感觉超模的角色,主c的天花板,可持续一年!