【问题标题】:What is the difference using react-router and the express routes.js使用 react-router 和 express routes.js 有什么区别
【发布时间】:2016-06-18 05:15:05
【问题描述】:

我正在做一个项目,使用 react、redux 和 express,我不明白 react-router 和 express routes.js 有什么区别,我需要将两者结合起来还是只使用一个?

https://github.com/reactjs/react-router

感谢您的帮助:)

【问题讨论】:

    标签: express reactjs react-router


    【解决方案1】:

    注意: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 将处理路由来决定渲染什么。

    【讨论】:

    • 感谢您的回答我有这种架构
    • 不客气,我在答案中添加了“编辑 2”。这完全是为了理解单页应用程序以及请求到达服务器时会发生什么。
    猜你喜欢
    • 2018-07-16
    • 2017-08-28
    • 2019-04-29
    • 2019-11-07
    • 1970-01-01
    • 2021-02-21
    • 2021-11-10
    • 2017-09-25
    • 2021-10-30
    相关资源
    最近更新 更多