【发布时间】:2020-07-18 01:08:34
【问题描述】:
这可能是一个愚蠢的问题。但本质上,我正在创建一个可用于任何普通 HTML / JS 文件的 React Modal 组件。我可以使用 Webpack 从我的 React 组件中创建一个 bundle.js 文件,然后可以将其注入到 Vanilla HTML 文件的 div 标签中:
<div id="my-modal-target"></div>
<script src="bundle.js"></script>
由于我正在尝试创建模态框,因此发生的情况是,每当用户单击“退出”时,我的 React 组件都会有条件地将模态框呈现为隐藏状态。但是,我试图弄清楚如何通过单击目标 Vanilla HTML 文件中的按钮来重新加载 React 组件。我将不胜感激任何关于我应该如何进行的建议。这是我尝试过的一些东西:
- 使用“ReactDOM.unmountComponentAtNode(document.getElementById(DIV_TAG_NAME));”从目标 HTML 中的 div 标签中强制卸载 React 组件,然后使用 JQuery 重新加载 div 标签。但是,这似乎会导致 CORS 问题,不会让我重新加载 div 标签。此外,这在 React 方面似乎不是一个好的做法。
- 在 Vanilla HTML 文件中单击按钮时,它会将一个 prop 传递给 React 组件。但是,这似乎不起作用,因为只有在第一次加载 React 组件时才会传入 props。也就是说,如果更改 Vanilla HTML 文件中的 props,不会影响 React 组件。
提前非常感谢您的帮助!
【问题讨论】:
标签: javascript jquery html reactjs dom