【发布时间】:2021-09-16 21:06:34
【问题描述】:
我需要一些关于 React 的意见。我有这个代码块。根据我的理解,在 setStateX(copy) 之后,整个组件会重新渲染。但就我而言,它没有发生。有什么理由吗?
const [stateX, setStateX] = useState([]);
const addAnotherComponent = (e) => {
let copy = stateX;
copy.push(
<AnotherComponent/>
);
setStateX(copy);
};
【问题讨论】:
-
let copy = stateX;副本不是stateX的副本,这就是它不重新渲染的原因。 -
在状态中存储组件也是一种反模式。
-
对我应该如何解决这个问题有什么建议吗?
标签: reactjs react-native react-hooks