我一直在玩React,到目前为止,我真的很喜欢它。我正在使用NodeJS构建一个应用程序,并希望将React用于整个应用程序中的某些交互式组件。我不想使它成为单页应用程序。
我尚未在网上找到任何可以回答以下问题的信息:
如何在多页面应用程序中分解或捆绑我的React组件?
目前,尽管我可能永远都不会在应用程序的某些部分中加载它们,但是我所有的组件都在一个文件中。
到目前为止,我正在尝试使用条件语句通过搜索React将在其中渲染的容器的ID来渲染组件。我不确定100%的最佳实践是什么。看起来像这样。
if(document.getElementById('a-compenent-in-page-1')) {
React.render(
<AnimalBox url="/api/birds" />,
document.getElementById('a-compenent-in-page-1')
);
}
if(document.getElementById('a-compenent-in-page-2')) {
React.render(
<AnimalBox url="/api/cats" />,
document.getElementById('a-compenent-in-page-2')
);
}
if(document.getElementById('a-compenent-in-page-3')) {
React.render(
<AnimalSearchBox url="/api/search/:term" />,
document.getElementById('a-compenent-in-page-3')
);
}
我仍在阅读文档,还没有找到多页应用程序所需的内容。
提前致谢。
我知道距问这个问题已经有一段时间了,但希望对您有所帮助。
如@Cocomico所述,您可以在webpack.config.js文件中为应用程序提供几个入口点。如果您正在寻找一个简单的Webpack设置(基于多个入口点的思想),该设置允许您将React组件添加到静态页面,则可以考虑使用以下方法:https : //github.com/przemek-nowicki/multi-page -app-with-react