首页 > 解决方案 > 为什么 useState 函数不是每次都初始化状态?

问题描述

import React, { useState } from "react";

function HookCounter() {
  const [count, setCount] = useState(0);

  return (
    <div>
      <button onClick={() => setCount(count + 1)}>Count {count}</button>
    </div>
  );
}

export default HookCounter;

React 每次需要重新渲染时都会调用这个函数。

但是为什么它不每次都初始化状态呢?

退出函数时,变量的生命就结束了,不是吗?

但是它如何保持保存状态的值呢?

我不明白。

useState功能上,有什么逻辑吗?

标签: javascriptreactjsreact-hooks

解决方案


useState作为一个函数,它将你给它的值存储在 React 的核心中。当组件重新渲染时,React 会将更新后的计数从其核心传递给组件。

更多信息在这里


推荐阅读