什么是hooks Hooks是React16.8的一个新特性,这让我们在不创建class的情况下,能够使用React的一些常用功能,例如state,生命周期等。在老版本中,如果我们需要使用state,必须要声明一个class 为什么要有Hooks 在有Hooks之前,React有哪些问题? 在多层组件中共享状态逻辑很麻烦,需要通过各种方式进行组件的封装,涉及到某些历史组件时,还有可能需要进行重构 复杂的组件,随着生命周期的各项方法处理,变得更加复杂和难以理解。 class的学习成本高 Hooks的出现解决了这些问题,hook使用在函数内。在Hook的使用环境下,React组件更加趋向于使用函数式组件。Hooks在函数内,不会影响React的大部分功能,但是能够更好的解决以上几个问题。 而且通过函数式方式,减少了学习成本,能够让新手更加快速的上手开发。 React内置Hooks概览 useState useState是React提供的一个Hook。可以在函数式组件中,使用该方法维护一个组件内的局部状态。React在每次渲染该组件时,保存此状态。 和class组件的不同的是,class组件内的state必须是对象,而且调用setState方法是,会将新传入的对象和老的对象进行合并操作。 useState中,可以定义任何类型的局部状态,而且进行状态更新时,也不会将旧状态和新状态进行合并。 useState(0)的返回值是一个长度为2的数组[count,...
2021, Jan 01 —
5 minute read