使用redux改写的github-explorer

Introduction

刚学习了redux不久,刚好看到一个优秀的react项目github-explorer,该应用使用了RxJS去处理数据流,为了巩固学习便有了使用redux改写的想法。html

源码地址
DEMO地址react

自定义中间件

应用中使用了自定义个中间件api,方便编写异步的 action creators。异步action能够定义成如下方式git

export function loadUserProfileRepos (username) {
  return {
    types: [USER_PROFILE_REPOS_REQUEST, USER_PROFILE_REPOS_RECEIVED, USER_PROFILE_REPOS_FAILURE],
    callAPI: () => api('fechURL`)
  }
}

中间件接收到这种形式的action,会处理异步请求并在适当的时候dispatchtypes中的各项。github

其余

应用的拉取数据的进度条方面,负责拉取状态reducer在接收到诸如xx_REQUESTxx_RECEIVED的actions后,会更新表示进度条状态的数据。npm

由于只是巩固redux学习,因此原应用的部分动画效果没有加上。redux

除了数据流部分,应用大部分都是照搬了原应用。api

dependencies

使用了redux后加上的依赖react-router

  • redux异步

  • react-router-redux学习

Development

开发

npm install
npm run start

打包

npm run dist

Reference

github-explorer
redux 文档

相关文章
相关标签/搜索