为什么在重新渲染组件时不会重置状态?
How come state isn't reset when component is rerendered?
假设我在功能组件中有以下内容:
const [addComment, setAddComment] = useState(false);
我不明白这个...
在重新渲染之前,addComment 的状态已更改为 True 而不是 False,组件的重新渲染不会再次将其更改为 False。我认为功能组件中的所有内容都重新运行,因此 useState(false) 将被再次调用,addComment 被重置为 False。
谢谢
这就是 useState 的设计方式:您传递给 useState 的值决定了状态的初始值。因此,在第一次渲染之后的每次渲染中,您传入的值都会被忽略。
假设我在功能组件中有以下内容:
const [addComment, setAddComment] = useState(false);
我不明白这个... 在重新渲染之前,addComment 的状态已更改为 True 而不是 False,组件的重新渲染不会再次将其更改为 False。我认为功能组件中的所有内容都重新运行,因此 useState(false) 将被再次调用,addComment 被重置为 False。
谢谢
这就是 useState 的设计方式:您传递给 useState 的值决定了状态的初始值。因此,在第一次渲染之后的每次渲染中,您传入的值都会被忽略。