0
我正在開發一個簡單的模態和一些工具提示。我想了解一些門戶網站,因此決定着手製作一個門戶網站。我有以下代碼:創建一個ReactJS門戶
const Portal = React.createClass({
render() { return null },
portalElement: null,
componentDidMount() {
let p = this.props.portalId && document.getElementById(this.props.portalId);
if(!p) {
let p = document.createElement('div');
p.id = this.props.portalId;
document.body.appendChild(p);
}
this.portalElement = p;
this.componentDidUpdate();
},
componentWillUnmount() {
document.body.removeChild(this.portalElement);
},
componentDidUpdate() {
render(<div {...this.props}>{this.props.children}</div>, this.portalElement);
}
});
當我運行這段代碼,我得到以下錯誤控制檯:
Uncaught Error: _registerComponent(...): Target container is not a DOM element.
我的理解是,它無法找到的元素,其中在體內安裝這種。我曾嘗試添加到index.html,但這仍然沒有解決它。
感謝您的幫助。
選中此http://stackoverflow.com/questions/28802179/how-to-create-a-react-modalwhich-is - 帶轉換的身體碰撞 –
@GinoLlerena感謝您的快速響應。我遵循那個教程 - 多數民衆贊成在上面的代碼。 –