import React, { useState, useEffect } from 'react' export default function App() { const [count, setCount] = useState(0) useEffect(() => { document.title = `You clicked ${count} times`; },[count]); return ( <div> <p>次数:{count}</p> <button onClick={() => { setCount(count + 1) }}>点击</button> </div> ) }
备注:
useEffect
Hook 可看做componentDidMount
,componentDidUpdate
和componentWillUnmount
这三个函数的组合。
第一个参数为函数,可以在此时返回需要清理的内容,相当于componentWillUnmount。
第二个参数可传可不传。空数组表示只渲染一次,相当于componentDidMount钩子函数;非空数组,当数组里的值发生改变则会重新渲染;不填,则每次都会渲染。