Reactjs 重新呈现问题

Reactjs 重新呈现问题,reactjs,react-portal,Reactjs,React Portal,我正在我的reactjs应用程序中使用react门户。我创建了两个根元素,一个用于呈现react应用程序,另一个用于react门户: 我还有一个组件MyComponent,它使用react portal将内容呈现给react portal根元素。内容由一个具有id的div元素(我们称之为container div)包装 MyComponent: 导出类MyComponent扩展了React.Component{ //构造器。。。 render(){ 返回( //更多内容 ); } } My

我正在我的reactjs应用程序中使用react门户。我创建了两个根元素,一个用于呈现react应用程序,另一个用于react门户:


我还有一个组件MyComponent,它使用react portal将内容呈现给react portal根元素。内容由一个具有id的div元素(我们称之为container div)包装

MyComponent:

导出类MyComponent扩展了React.Component{
//构造器。。。
render(){
返回(
//更多内容
);
}
}
MyComponent的父级:

导出类MyComponentParent扩展了React.Component{
// ... 
someMethod=>{
this.setState({myProp:someNewValue});
}
render(){
返回(
);
}
}
当MyComponent第一次呈现其内容时,div元素将作为react门户根元素的子元素呈现

现在,如果我使用setState在MyComponentParent中设置一个新状态,它将导致重新呈现MyComponent,MyComponent将再次呈现div。但是这次MyComponent的div不是作为react portal根元素的子元素呈现的,而是作为body元素的子元素呈现的

我不明白为什么会这样。我没能解决这个问题。我想要的是MyComponent的内容始终呈现到react portal根元素中

有人能解释这种行为吗

提前谢谢