首页 > 解决方案 > 如何使用 REST API 调用作为触发器从 nodejs 服务器上的反应代码生成静态 html 页面?

问题描述

是否可以从反应代码和 REST API 作为触发器生成静态 HTML 页面?我将提供一个用例来描述我的问题。

假设我正在使用 creat-react-app 构建一个简单的笔记 SPA 反应应用程序。UI 允许用户查看所有笔记的列表,添加、编辑和删除笔记。单击注释将链接到显示更多信息的注释页面。CRUD 操作是通过托管在使用 MongoDB 作为数据库的节点 js 服务器上的 REST API 完成的。

该笔记网站供课堂使用 - 一名教师有权进行 CRUD 操作,而所有学生完全被动,只能查看(阅读)数据。从这个角度来看,很明显,学生使用的网站可能是一个完全不同的 React 项目,具体来说,一个用于笔记列表的静态网站和一个用于每个笔记的静态网站——因为它只使用 REST API 获取数据并将其显示在a<NoteListItem /><NotePage />react 对每个音符都相同的组件。

显示整个列表的静态页面可以包含一个动态获取列表的 div,但是当单击一个便笺时,将显示该便笺的静态网站。当老师添加新笔记时,将对 my-host/api/addNote 进行 API 调用,并且在该控制器的末尾,我希望添加一个generateStaticPage(noteId)生成该笔记静态页面的函数。

这是基本思想,这意味着在 SSR/react-static 中使用一些已知概念,您可以在其中定义动态范围、静态、模板等。

一个可能的解决方案是像 react-static 这样的库,但是如何在添加注释后立即构建页面?是否有任何图书馆可以帮助我实现这一目标?

标签: node.jsreactjsserver-side-renderingreact-static

解决方案


推荐阅读