25.平时应该如何编写一个react界面?
1.拿到一个界面,应该先进行分析,把界面分成不同的模块,
如下面这样分模块:
这样的好处:
- 方便维护
- 代码结构清晰
- 方便复用
- 方便拓展
2.根据所分的模块,每个模块都可以写成一个组件
3.把这些组件拼接一起就完成了这个界面的编写
26.组件根据组件的定义方式可以分为函数式组件、类组件,他们主要有哪些区别?
(有一些新名词,可以先留个印象,以后会讲到)
- 自从有了hooks时,函数式组件直接如同开挂了一样,成为react写组件的主要方式,之所以还要学类组件,是因为老项目还在用
- 类组件有生命周期的概念,函数式组件的useEffce可以替代生命周期
- 函数式组件终于不用去理会讨厌的this,写过类组件的应该会知道this有很多坑,贼烦人
- 函数组件和类组件各有优势。类组件功能最为完备和强大,某些特殊用途(如错误边界)组件只能写成类式组件。函数组件没有this困扰且代码简洁,大部分的普通组件都可以写成函数组件。参考这篇文章:React函数组件与类组件使用及优劣对比_React_脚本之家 (jb51.net)(备注:我本人没有遇到过只能用类组件的情况,所以文章仅供参考)
鉴于作者本人的主观判断,觉得自己以后很少会接触类组件了,所以讲react以讲函数式组件为主,有需要了解类组件的可以自行查看百度或者论坛找找看。
27.讲函数式组件的时候老是讲hooks,所以hooks到底是什么?
react在不同的框架解释可能不太一样,以后我在这此系列文章里讲hooks专指react hooks
hooks是一些以use开头的函数,这些函数是为了让函数组件可以做到以前做不到的事情。
把hooks出来之前的函数式组件比作一个房间的话,hooks就好比空调、电视、风扇、洗衣机、女朋友。房间原本只有基本的住人功能,但是有了hooks就可以干更多的事情,但是并不是每个人都需要所有的hooks(比如007程序员,一整天都在公司,要女朋友干嘛),所以可以有选择性的使用hooks甚至不适用hooks