React
在React的世界里,所有的事物都是以组件(Component)为基础,通常会将同一个Component相关的程式和资源都放在一起,在撰写React Component时我们常会使用JSX的方式来提升程式撰写效率。JSX是一种语法类似XML的ECMAScript语法扩充,可以善用JavaScript的强大能力,放弃蹩脚的模版语言。最终JSX的内容会转化成JavaScript。
ReactJS的七个重要特性
- 基于组件(Component)化思考
- 写法一:使用ES6的Class
- 写法二:使用Function Component
- 用JSX进行宣告式(Declarative)UI设计
- 使用 Virtual DOM
- Component PropType 防呆机制
- 提供:props 预设值设定
- 提供:defaultProps 验证机制
- Component就像个状态机(State Machine),而且也有生命周期(Life Cycle)
- 根据 state
- 根据 props
- 一律重绘(Always Redraw)和单向资料流(Unidirectional Data Flow)
- 在JavaScript里写CSS: Inline Style
细化
- React Component 事实上已可视为显示UI的一个状态机(state machine),而这个状态根据不同的
state
(通过setState()
修改)和props
(由父元素传入),component会出现对应的显示结果。