Простой компонент портала отображает <div id = "undefined"></ div>

Я создал простой портал, следуя инструкциям на этом сайте: Как создать React Modal(который добавляется к ``) с переходами?, Код для простого портала:

var Portal = React.createClass({
  render: () => null,
  portalElement: null,
  componentDidMount() {
    var p = this.props.portalId && document.getElementById(this.props.portalId);
    if (!p) {
      var 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() {
    React.render(<div {...this.props}>{this.props.children}</div>, this.portalElement);
  }
});

Однако вместо того, чтобы отображать созданный выше div в качестве родителя, он отображает div с неопределенным идентификатором в качестве родителя. Мне интересно, почему это так и как я могу это убрать. Спасибо

1 ответ

Я думаю, вам нужно передать portalId в качестве опоры для компонента Portal. Который сейчас не определен.

Другие вопросы по тегам