javascript - 我如何使用服务器上的 react 路由器处理每条可能的路线?

标签 javascript node.js express reactjs react-router

readme in the react-router 之后:

var routes = (
  <Route name="app" path="/" handler={App}>
    <Route name="inbox" handler={Inbox}/>
    <Route name="calendar" handler={Calendar}/>
    <DefaultRoute handler={Dashboard}/>
  </Route>
);

Router.run(routes, function (Handler) {
  React.render(<Handler/>, document.body);
});

对 node 非常陌生,并且是一个信誉良好的前端 js 框架,请原谅这个菜鸟问题..

如何最好地处理服务器上的路由?

我的意思是,当有人登陆 /calendar 时会发生什么,我是否必须在 react 代码中适应客户端的路线,并在快速 route 适应服务器,或者是否应该有一个express 的通配符路线。 IE 某人登陆 /calendar,是否应该表达 / 的 html 并允许 React 处理其余部分?

谢谢, 约翰

最佳答案

您可以使用 React Router 在两侧呈现所有 路由。

在服务器端,如果您使用的是 Express 或类似的,这通常意味着创建一些中间件,这些中间件将使用 React Router 来处理传入的请求,而不是使用您的服务器端库自己的路由。这个答案中有一个最小的例子和解释:

对于更高级的示例,我有一些 Express 中间件,它还处理客户端上的数据获取、页面标题生成和引导,这在此处记录,并带有相关来源的链接:

关于javascript - 我如何使用服务器上的 react 路由器处理每条可能的路线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29451562/

相关文章:

node.js - 浏览器屏幕上的 Express Router "Cannot GET ..."

javascript - 构造更复杂的 for 循环

javascript - Node.js 和 xml2js - 将相同类型的多个属性渲染到不起作用的元素中

javascript - Node.JS + MySQL - 将 40 多个 UPDATE 语句压缩成一个,每个语句都有唯一的 WHERE 子句

javascript - 如何在主机入口域上创建 Node 应用程序监听?

javascript - 为什么客户端在 node + express + socket.io + jade simple app 中断开连接并重新连接

javascript - 在 google puppeteer 上作为 evaluate 方法的参数

php - 在 AJAX 中调用 PHP 脚本时出现错误消息 : Object not found!

node.js - Node js 上的 Heroku 登录问题

node.js - 如何使用 ssh 使用 nodegit 克隆 git 存储库