React Hooks

作者: 亦晓寒 | 来源:发表于2020-01-07 15:45 被阅读0次

一.useState

hooks就是在函数组件中使用state通过useState实现的。

useState传入一个初始值,生成一个数组,数组的第一位就是设置的变量,这里是count,第二位是对变量进行改变的函数,这里是setCount,可以对count进行修改的。

二.useEffect

useEffect相当于react的componentDidMount,componentDidUpdate,componentWillUnmount 三个生命周期函数的组合,

useEffect能够返回一个函数,用来清除上一次副作用留下的状态。

useEffect还可以传第二个参数:

1.什么都不传,组件每次 render 之后 useEffect 都会调用,相当于componentDidMount 和 componentDidUpdate;

2.传入一个空数组 [], 只会调用一次,相于componentDidMount和componentWillUnmount;

3.传入一个数组,其中包括变量,只有这些变量变动时,useEffect 才会执行。

三.useContext

useContext的使用相当于react中的父组件传值子组件,首先需要去创建一个context用createContext,然后通过创建的context提供value给其子组件,最后在子组件里面使用这个context就用到了useContext。

四.useReducer

userReducer的思想和redux相似,useReducer接收两个参数,第一个参数是一个函数,第二个参数是useReducer变量的初始值,它返回一个变量和一个dispatch函数,再通过dispatch来改变变量。

五.useMemo

useMemo用来缓存数据,数据是需要通过计算而来,就可以用这个函数来缓存这个数据,以至于我们在修改它们没有依赖的数据源的情况下,多次调用这个计算函数,浪费计算资源。

上面的例子中只有当性别改变的时候才会调用changeSex方法,姓名的改变不会调用该方法,可以节省资源。

六.useCallback

缓存一个函数,这个函数如果是父组件传递给子组件,或者自定义hooks里面的函数,可以缓存这个函数,不用每次重新声明新的函数,避免释放内存、分配内存的计算资源浪费,子组件不会因为这个函数的变动重新渲染。

七.useRef

useRef和ref非常相似,useRef可以获取dom还可以存储值。

上面的例子中,刚开始的inputEl是获取了dom,后来的textRef是存储了text这个值。

对于react hooks的介绍就这么多了,以上是react hooks中常用的函数,前三个函数是react hooks中最基本的函数。

相关文章

  • React Hooks

    React Hooks Hooks其实就是有状态的函数式组件。 React Hooks让React的成本降低了很多...

  • react-hooks

    前置 学习面试视频 总结react hooks react-hooks react-hooks为函数组件提供了一些...

  • React Hooks

    前言 React Conf 2018 上 React 提出了关于 React Hooks 的提案,Hooks 作为...

  • 5分钟简单了解React-Hooks

    首先附上官网正文?:React Hooks Hooks are a new addition in React 1...

  • react-hooks

    react-hooks react-hooks 是react16.8以后,react新增的钩子API,目的是增加代...

  • React-hooks API介绍

    react-hooks HOOKS hooks概念在React Conf 2018被提出来,并将在未来的版本中被...

  • React Hooks 入门

    React Hooks 是 React v16.8 版本引入了全新的 API。 React Hooks 基本概念 ...

  • react hooks 源码分析 --- useState

    1. react hooks简介 react hooks 是react 16.8.0 的新增特性,它可以让你在不编...

  • React Hooks的入门简介

    什么是React Hooks? 首先React Hooks是React生态圈里的新特性,它改变了传统react的开...

  • React hooks(钩子)

    React hooks(钩子) React hooks 是React 16.8中的新增功能。它们使您无需编写类即可...

网友评论

    本文标题:React Hooks

    本文链接:https://www.haomeiwen.com/subject/nsvpoctx.html