请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

嵌套对象更新测试为什么正常的

  // test赋值
  const [test, setTest] = useState({
    a: {
      b: {
        c: {
          d: "我是d",
        },
      },
    },
  });
  // 按钮事件
  onClick={() => {
	  // 未使用Immer
     test.a.b.c.d = "我改了";
     setTest({ ...test });
  }}
  // 页面显示
  <div>{`a:${test.a.b.c.d}`}</div>!
  [点击前页面]
	 (https://img1.sycdn.imooc.com/szimg/5ca5036909bcae1509780539.jpg)
  [点击后状态正常更新了]
   (https://img1.sycdn.imooc.com/szimg/41123b6909bcae4409660551.jpg)

实际上state状态更改了,见截图

正在回答 回答被采纳积分+3

1回答

十三山入秋 2026-04-11 01:52:16

哈喽,

把 setTest({ ...test });  改成 ===> setTest(test);

试一下


0 回复 有任何疑惑可以回复我~

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号