【发布时间】:2019-11-15 14:14:26
【问题描述】:
我想在我的 React 应用中实现模式。门户网站似乎对此非常好,但我不想更改我的外部 HTML 结构。
HTML-应该仍然是:
<div id="app"></div>
我不想在 HTML 结构中添加额外的 div。
在 App.js 中,我尝试像这样添加 root-modal-container:
class App extends Component {
render() {
return (
<ResponsiveProvider>
<div id="root-modal"></div>
<Modal>
<div>Modal :-)</div>
</Modal>
</ResponsiveProvider>
);
}
}
但是当尝试在模态组件中 getElementById 时,我总是得到错误:appendChild on null...
问题是,在启动 Modal-component 时,root-modal-div 没有渲染结束。
有什么解决方案可以让我在应用程序的任何位置之后直接在关卡中渲染模态框?
您可以看到未运行代码here。取消注释 HTML 中的第二行以使代码运行。
【问题讨论】:
-
请分享所有必需的代码以重现您想要实现的目标
-
@Phillip 你可以在这里看到它:codepen.io/anon/pen/MMBdJW
标签: javascript reactjs