Next.js构建静态网站
Author:zhoulujun Date:
Next.js 的 Data Source 是任意的:开发者只需要在 pages 中命名导出 getStaticProps、getServerSideProps、getStaticPaths、getInitialProps 供 Next.js 在构建时调用,Next.js 本身并不关心数据来源是 GraphQL 还是 RESTful,亦或者是本地文件系统。
为了加快构建速度,Next.js 默认使用 worker_thread 进行多线程构建,其中 getStaticProps、getStaticPaths 等函数都会在不同的线程中运行。Next.js 并没有实现线程间共享数据的 API,目前官方推荐的做法是将需要共享的数据写入文件系统进行缓存
静态渲染:
Next.js 优点很多,它支持很多种模式,什么 BSR(Broswer Side Render)、SSG(Static Site Generation)、SSR(Server Side Render)
具体参看:《next.js静态页面渲染技术(静态生成和服务端渲染):BSR/SSG/SSG》,为了SEO,个人博客肯定选择SSG!
静态站点生成器 (SSG),例如 Eleventy 或 Gatsby 创建预渲染文件,无需服务器端或数据库即可快速构建静态站点,在版本控制、性能和安全性都非常出色,但构建步骤和以开发人员为中心的过程可能会减慢发布速度,尤其是在大型网站上。
Next.js 是一个基于 React 的应用程序框架,它几乎没有特定于博客功能。但是,它可以提供了一种实现机制:
在可能的情况下,Next.js 生成静态内容,如 SSG,这些页面加载速度非常快,可以被搜索引擎快速收录,并且可以在任何有或没有 JavaScript 的设备上阅读。
在第一次加载后,Next.js 应用程序的行为类似于单页应用程序 (SPA),后续页面和代码会以渐进式下载,无需刷新整页。
Next.js 为每个请求提供服务器端渲染 (SSR),为个人用户提供实时 CMS 更新或自定义内容变得更加容易。
如果网站可能会从基本博客迭代为更复杂的网站,例如在线商店、新闻聚合服务、社交媒体平台等,可以考虑使用 Next.js。
参考文章:
使用 Next.js + Hexo 重构我的博客 https://blog.skk.moe/post/use-nextjs-and-hexo-to-rebuild-my-blog/
使用 NextJS 和 TailwindCSS 重构我的个人博客 https://cloud.tencent.com/developer/article/1901170
转载本站文章《Next.js构建静态网站》,
请注明出处:https://www.zhoulujun.cn/html/webfront/server/nextjs/8834.html