【发布时间】:2021-06-19 05:15:18
【问题描述】:
我有一个存储组件的变量,例如:
const list = {
components: [<ComponentOne key={1}/>, <ComponentTwo key={2}/>]
}
只有客户选择的组件会被渲染,其他没有选择的组件应该待机,但不能被销毁,因为当客户选择另一个组件时,它应该出现而不是重新构建。
但是当我从 ComponentOne 切换到 ComponentTwo 然后又回到 ComponentOne 时,它会被重建,并且我丢失了 ComponentOne 中已经完成的所有内容
有没有办法在创建的组件不渲染时,不丢失所有状态?
【问题讨论】:
-
当你有条件地渲染组件时,它们会默认卸载和装载。您可以根据条件使用 css
visibility: hidden隐藏组件 -
你还可以在父组件中管理你的组件列表的内部状态,并作为道具传递下去。
标签: reactjs