banyudu / kedao

React 编辑器,从 braft-editor 修改而来,基于 draft-js 实现
https://kedao.vercel.app
MIT License
7 stars 2 forks source link

Media library 弹出框中的 Cancel 按钮点击无响应 #20

Closed banyudu closed 2 years ago

banyudu commented 2 years ago

出问题的代码在

  const modalInstance: any = ReactDOM.render(
    <Modal
      {...newProps}
      onConfirm={onConfirm}
      onCancel={onCancel}
      onClose={onClose}
    />,
    hostNode
  )
  modalInstance.destroy = close  // 这一行异常
  modalInstance.update = modalInstance.renderComponent

查了下,和 react 18中的 reactdom.render 返回值修改有关,参考:https://github.com/facebook/react/issues/12315

banyudu commented 2 years ago

为了解决这个问题,同时为将来支持 Next.js 做准备,计划使用 react-portal 组件重新实现项目中的 Modal 组件,删除其中的 ReactDOM.render 部分