小编jac*_*ack的帖子

为什么 useEffect 在 window.innerWidth 更改后运行,即使其中的第二个参数是空数组

useEffect这段代码每次窗口大小改变时都会运行,但是第二个参数useEffect是一个空数组,我想只要第二个参数与上次相比没有改变,就useEffect不会运行

import React from "react"

export default function WindowTracker() {
    
    const [windowWidth, setWindowWidth] = React.useState(window.innerWidth)
    
    React.useEffect(() => {
        window.addEventListener("resize", function() {
            setWindowWidth(window.innerWidth)
        })
    }, [])
    
    return (
        <h1>Window width: {windowWidth}</h1>
    )
}
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-hooks use-effect

3
推荐指数
1
解决办法
1372
查看次数

标签 统计

javascript ×1

react-hooks ×1

reactjs ×1

use-effect ×1