将 React 用于多页面应用程序是否合理?如何?
Is it reasonable to use React be used for multi-page applications? And how?
我的 React TodoList 项目我正在考虑一个按钮将用户带到另一个页面。
但如果我没记错的话,React 最适合用于单页应用程序。那么创建不与主渲染文件交互的其他独立组件是否明智?例如,index.html < index.js < App.js(呈现为 index.js
& AddTodo.html < AddTodo.js < App.js(呈现到另一个页面并且不与 index.js 交互)?
是的,是的。您可以通过多种方式使用 React 构建多页面应用程序。
- Using Router as @patrick-stephansen 在评论中正确建议。请注意,在这种情况下,路由只是伪装成页面,但实际上它们不是。实际上,您始终停留在响应用户操作动态重新呈现的同一页面上。
- 插件后端。通过这种方式,您将能够正确定义路由并提供不同的页面(具有不同的 React 生成的视图)。
- 使用静态站点生成器(例如 Gatsby)。这样,您将在 React 中编写站点,但最终会在
dist
文件夹中生成简单的 HTML 文件,这些文件不需要在生产环境中出现任何后端。
您所描述的基本上是一个静态站点(不同的 HTML 文件插入了不同的 JS 包)。然而,在没有静态站点生成器的情况下这样做非常乏味、容易出错且难以维护。
我的 React TodoList 项目我正在考虑一个按钮将用户带到另一个页面。
但如果我没记错的话,React 最适合用于单页应用程序。那么创建不与主渲染文件交互的其他独立组件是否明智?例如,index.html < index.js < App.js(呈现为 index.js & AddTodo.html < AddTodo.js < App.js(呈现到另一个页面并且不与 index.js 交互)?
是的,是的。您可以通过多种方式使用 React 构建多页面应用程序。
- Using Router as @patrick-stephansen 在评论中正确建议。请注意,在这种情况下,路由只是伪装成页面,但实际上它们不是。实际上,您始终停留在响应用户操作动态重新呈现的同一页面上。
- 插件后端。通过这种方式,您将能够正确定义路由并提供不同的页面(具有不同的 React 生成的视图)。
- 使用静态站点生成器(例如 Gatsby)。这样,您将在 React 中编写站点,但最终会在
dist
文件夹中生成简单的 HTML 文件,这些文件不需要在生产环境中出现任何后端。
您所描述的基本上是一个静态站点(不同的 HTML 文件插入了不同的 JS 包)。然而,在没有静态站点生成器的情况下这样做非常乏味、容易出错且难以维护。