第二个参数可以是引用类型,使用useCallback或者useMemo包一下就可以了。像下面这么写,即使在输入框中进行输入,consoleLog也不会执行,因为consoleLog不会发生改变
function App () {
const [name, setName] = useState('');
const consoleLog = useCallback(() => {
console.log(111);
}, [])
useEffect(() => {
consoleLog();
}, [consoleLog])
return <div>
111
<input value={name} onChange={(e) => {
setName(e.target.value);
}}/>
</div>
}

IP属地:黑龙江