useState是React Hooks 最基础的API之一,用于管理函数式组件的状态。

所谓的函数式组件,就是一个返回React Element的函数。

useState(initialState): [state, setState]
useState(() => initialState): [state, setState]

useState的几种形式:

const [state, setState] = useState(initialState);
 
// 当计算initialState是个耗时任务时,可以把它作为一个函数传给useState
const [state, setState] = useState(() => initialState); 
 
// 调用setState可以触发渲染
setState(newState)
 
// setState的另一种调用形式
setState(prevState => newState)
 
// 第二种形式的用例:
 
const [count, setCount] = React.useState(0)
const increment = async () => {
	await doSomethingAsync()
	setCount(previousCount => previousCount + 1)
}