请稍等 ...
×

采纳答案成功!

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

不可变值

老师,react里的不可变值,这个不可变指的是在修改状态之前 这个值是不能发生改变的吧,并不是一直是不变的,还是说这个 不可变 指的是 一直不能发生变化。

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

1回答

双越 2021-06-11 09:00:18

就是一直不变。例如

const arr = [1, 2, 3]
arr.push(4) // 被修改
const arr1 = a.concat(4) // 重新生成 arr1 ,但 arr 是一直不变的


1 回复 有任何疑惑可以回复我~
  • 提问者 Hujx #1
    谢谢老师答复。
    但还是有点迷,state的值不是在setState的时候会发生变化的嘛。
    老师,我目前的理解是在重新渲染view之前,状态值不能发生变化,否则会影响SCU的判断。但在重新渲染view之后,这个状态值是对于当前组件来说是发生变化的,但在重新加载这个组件的时候还是使用的最初的值。
    对于state状态值不可变的限制的目的是为了SCU做进一步的判断接下来的视图是否要进一步渲染。
    不知道我目前的理解对不对,
    还请老师指正。
    回复 有任何疑惑可以回复我~ 2021-06-11 09:46:10
  • 双越 回复 提问者 Hujx #2
    是的。
    回复 有任何疑惑可以回复我~ 2021-06-11 17:23:37
  • 提问者 Hujx 回复 双越 #3
    收到,谢谢老师答复。
    回复 有任何疑惑可以回复我~ 2021-06-14 01:36:20
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信