将使用create-react-app创建的React应用程序集成到外部应用程序中

时间:2018-02-04 18:00:12

标签: javascript reactjs typescript create-react-app

我正在使用create-react-app-typescript来创建反应应用程序。我要做的是build应用程序,然后将生成的jsCSS文件包含到另一个应用程序中(这是一个非常古老的应用程序,不知道任何关于反应或任何新的JavaScript功能)

我的问题:我希望能够将信息传递给我的React应用程序;例如,我想指定一个用于显示信息的数组,但问题是,只要我向React的<script>文件添加js标记,它就会尝试在下创建应用程序目标div元素。

不确定这是不是一个好主意,但我尽量避免eject我的React应用程序,以便我不需要自己维护所有内容。

我想到的一个解决方案是在localStorage中创建一个项目,然后从我的React应用程序中读取它,这会以某种方式解决问题,但这是一个很好的方法吗?

然后又出现了另一个问题:我希望能够从外部应用程序传递一个回调,以便从我的React应用程序中调用,以便在我的外部应用程序中发生某些事情,而使用localStorage无法做到这一点

非常感谢任何帮助或提示, 谢谢

1 个答案:

答案 0 :(得分:1)

您根本不必弹出项目。一种可能的解决方案(可能不是最好的)只是更改您的index.js以公开您的应用程序。因此,而不是直接&#34;渲染&#34;应用程序执行类似以下操作

// needed imports

window.startFromOutside = function(element, callback) {
  ReactDOM.render(<ReactApp cb={callback} />, element)
}

通过这种方式,您可以从外部引导您的反应应用程序,传递您想要的任何属性。