一个基于 React 全家桶(react、redux、react-router、immutable-js)以及 rxjs 的 QQ 音乐单页应用。 Demo 戳我:http://qqmusic.padabon.com. 安装 npm install 运行 npm start 访问 http://localhost:3000 小结与问题 使用 creat-react-app 构建项目,可以快速起手进入代码编写 使用 redux 可以方便的对播放状态进行存储与还原 使用 immutable-js 可以方便的进行 shouldComponentUpdate 判断 实际使用 immutable-js 并不那么舒服,需要使用 get 拿到 value,不能使用扩展运算符, 对于需要 localStorage 本地存储的 state,也只能使用 Map 和 List,其他数据类型并不能通 过 fromJS 进行还原,容易与原生 Object 和 Array 混用,或许 seamless-immutable 是更好的 选择,更可能只是我使用姿势不对 react 动画并不能达到理想效果,搜索页的 tab 切换使用了一下,大概还没领悟正确的使用方法 由 redux-sagas 替换为 redux-observable,只是觉得 rxjs 更有趣强大 css 都是 QQ 音乐页面的,css in js 似乎不错 React 全家桶起手比较困难,上手之后还是比较顺手的 使用不当的的地方,欢迎反馈、建议等~ ... Todos 测试 服务器端渲染 使用 normalizr Web Audio Api 动画 ... 欢迎各种反馈、建议等~