react hooks 是react为了替代高阶组件而制造的,
可以理解为即插即用版本的state和setState,而
Effect Hook 可以用来执行副作用操作。
默认情况下,它在第一次渲染之后,每次更新之后都会执行。
(供了类似 ComponentdidMount, ComponentDidUpdate, ComponentWillUnMount 的功能)
一般用于:
获取数据
事件处理
改变 DOM
import React, { useState, useEffect }from 'react';
import ReactDom from 'react-dom';
function fn() {
const [val, setVal] = useState(null);
const [query, setQuery] = useState(null);
// 副作用
useEffect(()=> {
fetch('https://url').then(res => {handleChange(res)})
return function clearUp() {
// ...
}
});
handleChange = (res) => {
// setQuery(res)
}
return <input onChange={() => setVal(val)} />
}