为什么在使用ReactDom.createPortal时我的模态中有未定义的子代?

问题描述

在我的模态中,我使用createPortal在DOM之外渲染我的模态。问题是,当我使用createPortal时,我的模态不起作用,至少不能与Radium结合使用。如果我没有镭,它会起作用。那我该如何解决这个问题呢?

这是我收到的错误消息。

TypeError: Cannot read property 'children' of undefined

    var children = renderedElement.props.children;
    ^
    var newChildren = _resolveChildren({
    children: children,

我尝试删除createPortal,它可以正常工作。我试过去除Radium,它可以工作。因此,当我同时使用createPortal和Radium时,问题就来了。

const Modal = ({ modal,hide_modal,children }) => {
  return ReactDom.createPortal(
    <div style={{ display: modal ? "block" : "none" }}>
      <div
        role="button"
        onClick={hide_modal}
        style={styles.modaloverlay}
      />
      <div style={styles.modalStyles}>
        <div style={styles.modalBox}>{children}</div>
      </div>
    </div>,document.getElementById("modal-portal")
  );
};

export default connect(mapStatetoProps,mapdispatchToProps)(Radium(Modal));

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...