react学习笔记(13) - hooks(1) - useState()
什么是hooks
?
hooks
是React v16.8
版本提供的一个新特性,我们可以简单的认为它是函数式组件
的生命周期
,允许我们在不使用Class
的前提下使用生命周期、state
和其他特性。因为再以前的版本中,函数式组件是没有生命周期的也没有状态(state
)的,因此我们之前写组件大多都是用类组件
(class
),但是相较于类组件,函数组件的本身更加简单,更好的胜任*根据状态来渲染UI
这件事,*因此React Hooks
应运而生!React Hooks
的意思是,组件尽量写成纯函数,如果需要外部功能和副作用,就用钩子把外部代码”钩”进来。React Hooks
就是那些钩子。你需要什么功能,就使用什么钩子。React
默认提供了一些常用钩子,你也可以封装自己的钩子。所有的钩子都是为函数引入外部功能,所以React
约定,钩子一律使用use
前缀命名,便于识别。你要使用xxx
功能,钩子就命名为usexxx
。
React
默认常用的钩子:
useState()
useContext()
useReducer()
useEffect()
useMomo()
useRef()
useCallback()
总结
单从形式上看,Hooks
是对函数式组件
的增强,使之能与类组件
平起平坐,甚至(期望)取而代之。实质意义在于进一步将更多的函数式思想引入到前端领域,比如 Effect
、Monad
等。算是在提出v = f(d)
的 UI
层函数式思路之后,在这条路上的进一步探索
1. useState()
- 这是用与保存组件状态的
hooks
,能够让函数组件拥有自己的状态(state
)
// hooks - useState() 给函数组件提供状态以及修改其状态的唯一方法 |
结果展示:
小案例(todoList
)
// 使用函数式组件以及hooks写成的todolist案例 |
结果展示
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0许可协议。转载请注明来自 肥林の仓库