之前在react官网上囫囵吞枣学了react的一点基础知识,就急不可耐的写了很多代码(人脸识别,云笔记,实训的医院管理系统前端。。。),结果遇到了很多坑。react是一门很复杂的技术,而我缺乏系统的学习,正好看到一本《深入浅出react和redux》的电子书,借此深入学习react。
props和state
react天然具有高内聚,低耦合的特征(样式,内容,交互内封装一个组件中)。props
看作外部的接口,state
看作自己的内部状态,两者改变都会导致组件的重新渲染。react组件开发应合理划分组件的边界,将高内聚(交互频繁)的部分合并为一个组件,组件和组件中间保证低耦合(低信息交换)
props类型约束与初始化
假设一个组件名字是Counter(计数器),有string类型的caption
,number类型的initValue
,其中caption
必须被申明,且必须是string类型,initValue
必须是number类型,需要有默认值。
class Counter extends React.Component { |
如果违背了约束条件,则会在console中产生warning,有效避免了调试找bug的困难。