Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 在本地使用react router进入express时,为什么我的html根目录为空_Reactjs_Express_React Router - Fatal编程技术网

Reactjs 在本地使用react router进入express时,为什么我的html根目录为空

Reactjs 在本地使用react router进入express时,为什么我的html根目录为空,reactjs,express,react-router,Reactjs,Express,React Router,我正在尝试使用同一个页面在“/”和“登录”atm上运行两条路线。然而,当我通过express而不是WebpackDev服务器加载页面时,我会得到一个空白的html页面,而不是react路由器加载。不知道从这里到哪里去 我看过一些例子,我相信express可以直接路由到html页面,我在这里就是这样做的,我没有收到任何错误,只有一个空白的html,带有它连接react的“root”id 文件夹 ├── server.js ├── js(用于最终反应渲染) ├── Src │ ├── 公众的

我正在尝试使用同一个页面在“/”和“登录”atm上运行两条路线。然而,当我通过express而不是WebpackDev服务器加载页面时,我会得到一个空白的html页面,而不是react路由器加载。不知道从这里到哪里去

我看过一些例子,我相信express可以直接路由到html页面,我在这里就是这样做的,我没有收到任何错误,只有一个空白的html,带有它连接react的“root”id

文件夹
├── server.js
├── js(用于最终反应渲染)
├── Src
│   ├── 公众的
│   │   ├── js(react的空html)
│   │   
│   │__ 组件
│   │   
│   │__路线
│   │  |__js(反应路线)
|

|__js(收集所有组件以推送到index.js下一个目录上)
我认为问题在于您还需要为静态资产提供服务。在您的server.js中包括此行:

// Serve static assets
app.use(express.static(path.resolve(__dirname, '..', 'build')));

你必须用你的目录替换代码,我认为
public
是你的文件夹(内置js文件和图像所在的地方)。

运气不好,不确定我用来呈现reactjs的html页面是否与public文件夹中的相同,尽管公用文件夹中只有index.html文件,但构建的
js
文件在哪里?例如:bundle.js或main.***.js??如果你上传了你的文件夹结构,而不是package.json之类的东西,这会有所帮助。。。很抱歉,我知道我忘了一些东西,让我编辑并添加它,我相信我在bundle.js中获得了正确的路由,但是当我运行dev服务器时它不会加载,但仍然正确显示