如何渲染一个反应应用程序在另一个反应应用

时间:2017-08-01 17:29:32

标签: javascript reactjs

我有两个反应应用程序: - 第一个应用程序是一个不同帖子的应用程序,例如我们有一些帖子列表,可以打开每个帖子阅读等等。 - 第二个应用程序是一个用于注释的小部件,它被描述为一个小部件,因为它可以在不同的地方和不同的应用程序中使用,但会有一个逻辑。

我使用一些提供函数来装载这个小部件,它看起来像:

export default function (mountPoint) {
render(
    <Provider store={store}>
        <SomeContainer />
    </Provider>,
    mountPoint
);

在我的第一个应用程序中,当我打开一些帖子时,我在我的DOM元素上使用 componentDidMount 方法和 ref 挂载它。

在此步骤中,连接这两个应用程序没有任何问题。 但是......当我尝试打开另一个帖子时,我必须删除以前的评论小部件并装载新的。我的组件渲染帖子没有卸载,只是获得新的道具。当然我可以获得新的道具并比较例如id以前和新帖子。但是,我如何卸载以前的小部件应用程序并在同一个DOM元素上挂载新文件?

1 个答案:

答案 0 :(得分:0)

您应该在react-router旁边的一个应用中使用这两个组件。

看起来像这样......

<Router>
  <Route exact path="/" component={Component1}/>
  <Route path="/path" component={Component2}/>
</Router>

Here是有关反应路由器用例的附加资源。