【发布时间】:2016-06-18 05:15:05
【问题描述】:
我正在做一个项目,使用 react、redux 和 express,我不明白 react-router 和 express routes.js 有什么区别,我需要将两者结合起来还是只使用一个?
https://github.com/reactjs/react-router
感谢您的帮助:)
【问题讨论】:
标签: express reactjs react-router
我正在做一个项目,使用 react、redux 和 express,我不明白 react-router 和 express routes.js 有什么区别,我需要将两者结合起来还是只使用一个?
https://github.com/reactjs/react-router
感谢您的帮助:)
【问题讨论】:
标签: express reactjs react-router
注意:this stackoverflow post 包含对您有很大帮助的示例和代码。
这是一个经典的误解。 Express 将处理您的后端路由,而 React(使用 react-router 或任何前端路由库)将处理前端路由。
您的 React 应用程序可能是一个 SPA(单页应用程序),这意味着您的服务器(express 或其他)必须为 index.html 提供服务,并且 react 将从这里处理您的应用程序。这意味着 React 将评估路由并决定渲染哪个视图。
因此,您必须确保当用户使用/accounts/me 之类的路由时,如果需要,服务器会为您的前端(反应)应用程序提供服务,但/api/users/me 之类的东西会呈现数据。这只是一个例子。
“正常”用法是使用 express 处理您的数据(通过一个 API),而仅使用 React 处理应用程序(页面和视图)。
如果你使用的是服务器渲染,它会变得有点复杂。
在大多数情况下,是的,您必须同时使用两者。
编辑:如果您的问题更具体地涉及您的使用情况和您想要做什么,则更容易回答。
编辑2:大多数时候,为前端应用程序和API(数据)提供服务的服务器不同,如果是,只需确保在某些路由到达服务时发送应用程序:即/home, /about(显然是 - 这里 - 不是 api 路由)应该发送 serve index.html 作为您的前端应用程序,React 将处理路由来决定渲染什么。
【讨论】: