我正在构建一个带有快速后端的反应应用程序。我现在正在向前端添加套接字 io 聊天功能。一切都按预期工作,但现在我想从 url 访问参数来设置 socket-io 通道名称。
我希望用户访问localhost:3000/foo
并且反应前端能够访问foo
参数。
最好的方法是什么?
目前我正在提供静态文件,如下所示:
app.use(express.static(`${__dirname}/../client/dist`));
我尝试使用以下代码添加 react-router-dom 但它根本不显示页面:
import React from 'react';
import ReactDOM from 'react-dom';
import { BrowserRouter as Router, Route } from 'react-router-dom'
import App from './components/App.jsx';
ReactDOM.render(
<Router>
<Route path="/:id" component={App} />
</Router>,
document.querySelector('#app'));
每当我在 url 的末尾添加一些东西时(我输入的东西不是 '/' 页面不显示。我收到错误“cannot GET /foo”</p>
我也试过这个,但前端也不显示:
app.get('/:id', (req, res) => {
console.log('-----------', req.params.id)
})
我的最终目标是仅在用户访问时显示聊天应用程序localhost:3000/chat/:channelId