假设我们有一个包含 useState 的 React 组件。
const expensiveCalculation = () => { // ... } export default function AboutPage() { const [state, setState] = useState(expensiveCalculation()) return ( // ... ); }
我们用昂贵的计算函数的结果启动状态。
每次组件重新渲染时,函数 costlyCalculation 都会运行,即使我们只需要它的结果作为 useState 的初始值。该函数的结果将不会被使用。
为了避免重新渲染期间昂贵的计算,请传递函数本身而不调用它。 React 足够智能,可以在挂载时调用函数本身,而不是每次渲染时调用函数本身。
const expensiveCalculation = () => { // ... } export default function AboutPage() { const [state, setState] = useState(expensiveCalculation) return ( // ... ); }
以上是您可能不知道的 useState 性能技巧的详细内容。更多信息请关注PHP中文网其他相关文章!