gpt4 book ai didi

javascript - React - 没有依赖项数组的 useMemo 与空数组

转载 作者:行者123 更新时间:2023-12-05 00:24:45 26 4
gpt4 key购买 nike

做和做有什么区别

const value = useMemo(() => {
...
});
const value = useMemo(() => {
...
}, []);
?

最佳答案

使用 useMemo()没有依赖项数组将计算 valueevery render .

If no array is provided, a new value will be computed on every render.


这将相当于
const value = ...
使用 useMemo()使用空依赖数组将计算 value只有一次,在山上。
演示:

const App = () => {
const value1 = React.useMemo(() => {
console.log('calculating value1');
});
const value2 = React.useMemo(() => {
console.log('calculating value2');
}, []);
const [counter, setCounter] = React.useState(0);
return (
<button onClick={() => setCounter(counter + 1)}>{counter}</button>
);
};

ReactDOM.render(<App />, document.querySelector('.react'));
<script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>
<div class='react'></div>

关于javascript - React - 没有依赖项数组的 useMemo 与空数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68513914/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com