为什麽需要前端框架?
- 开发速度更快:可以使用 JavaScript 提供的功能(回圈、条件判断、变数)
- 资料驱动画面:搭配开发者工具,更容易维护
- 程序逻辑架构清楚:更容易维护
- 浏览器效能更好:只变更画面中有需要变更的部分
关於 React
- 由 Facebook 负责维护与开发
- 是一个轻量的 JS library
- 主要用来实作使用者介面(MVC 的 View部分)
React 设计核心思想
- 元件化 (Component-Based)
- 宣告式 UI / JSX
- 单向资料流 (Unidirectional data flow)
- 使用 Virtual DOM
- 大量使用高阶元件(HOC)
生态圈
React 主要功能为打造 UI
常见的搭配套件有:
- react-router:配合 react 实现路由
- react-router-dom:react-router 的扩充套件,react-router 为核心功能,react-router 的内容为网页扩充功能
- redux:热门的 React 状态管理套件,功能为 MVC 当中的 Model
- redux-saga:用以处理 react 非同步、不可预测的程序行为,补足 redux 只能使用 pure function 的问题
- dva:react + react-router + redux + redux-saga 多合一的套件,能够以简单的程序码完成复杂的逻辑架构