如何告诉React使用另一个索引

时间:2018-04-30 21:51:25

标签: reactjs webpack

我创建了一个应用程序 react-create-app client 在我的电子商务网站内(它使用nodejs和express),以实现其他一些功能。问题是我不了解如何使react-app与ejs模板一起工作,而不是使用index.html。首先,我希望根组件位于views文件夹内的.ejs文件中(外部反应应用程序)。我想我需要在webpack中改变一些东西,但我真的很困惑,我甚至找不到配置,而且还有很多我以前从未见过的插件和代码,#&# 39;真的很难理解。此外,当我在端口3000上运行我的服务器并在端口5000上运行应用程序(代理设置为3000)时,它说'已经在端口3000' 上运行的东西。我该怎么办?我不能在整个网站(所有按钮,菜单)上使用反应,因为它太简单了我想的反应,并且有一些简单的渲染用ejs完成,我不知道如何实施与反应。

enter image description here

1 个答案:

答案 0 :(得分:0)

首先,你不应该在现有页面上使用create-react-app只是一堆组件,这是完全用于真正的SPA完成的环境,完全在React中完成。如果你只需要将React插入现有页面,你别无选择,只能阅读文档,学习或找到如何在现有应用程序中设置的方法(你没有说任何关于它的内容,所以我没有回答如何。)

其次,您需要使用eject yarn eject html-webpack-plugin您的反应应用程序,这将向您展示所有配置。 https://github.com/facebook/create-react-app/blob/master/packages/react-scripts/template/README.md#npm-run-eject

然后您需要.ejs,可以接受React格式作为入口点https://github.com/jantimon/html-webpack-plugin

我认为没有任何理由不将dictionary1 = {'cat': ['frog', 'frog'] , 'dog': ['deer', 'deer', 'deer', 'goat'], 'bat': ['apes,' 'mice', 'mice'] } dict2={i:list(set(dictionary1[i])) for i in dictionary1} 用于所有事情,因为它“太”简单了。您可以使用PureComponents渲染纯HTML,浏览器渲染它的成本几乎为0。