import { useState, useEffect } from 'react' // useEffect函数,作用就是为 react 函数组件提供副作用处理的 /* 依赖项控制副作用的执行时机 1.默认状态(无依赖项):组件初始化的时候先执行一次,等到每次数据修改组件更新再次执行 2.添加一个空数组依赖项,组件初始化的时候执行一次 3. 依赖特定项:组件初始化的时候执行一次,依赖的特定项发生变化会再次执行 4.注意事项:只要 useEffect 回调函数中用到的数据状态就应该出现在依赖项数组中声明,否侧可能会有 bug hook 的出现就是在不用生命周期的概念也可以写业务代码 */ function App() { const [count, setCount] = useState(0) // 0 是 count 的初始值 const [name, setName] = useState('one') /* useEffect(() => { // 定义副作用 console.log('副作用又执行了') document.title = count }, []) */ // 添加一个空数组依赖项 [],组件只在首次渲染时执行一次 /* useEffect(() => { // 定义副作用 console.log('副作用又执行了') document.title = count }, [count]) */ // 添加特定依赖项 [count] // 初始化 + count 或 name 被修改时都会执行副作用函数 useEffect(() => { // 定义副作用 console.log('副作用又执行了') document.title = count console.log(name) }, [count,name]) return (
) } export default App