【发布时间】:2019-02-15 00:48:44
【问题描述】:
我有一个可能令人困惑的问题,因为它不符合反应和虚拟 dom 工作方式的标准行为,但我还是想知道答案。
想象一下,我有一个名为“Container”的简单反应组件。 容器组件在渲染方法内部有一个“div”,其中包含另一个名为“ChildContainer”的组件。围绕“ChildContainer”的“div”的 id 为“wrappingDiv”。
例子:
render() {
<Container>
<div id="wrappingDiv">
<ChildContainer/>
</div>
</Container
}
如何销毁“ChildContainer”-component-instance 并创建一个全新的。这意味着旧实例的“ComponentWillUnmount”被调用,新组件的“ComponentDidMount”被调用。
我不希望旧组件通过更改状态或道具来更新。
我需要这种行为,因为我们合作伙伴公司的外部库有一个库,它会更改 dom-items,并且在 React 中,当我更新组件时,我会收到“找不到节点”异常。
【问题讨论】:
标签: javascript reactjs dom