首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

梳理NextJS13两种路由下的不同渲染方式:SSG,ISR,SSR,RSC

前言 NextJS是一款基于 React 进行全栈开发的框架,是当下非常火的React全栈框架之一,在去年NextJS发布了V13版本,而本文将基于V13版本的app路由,来梳理它的几种不同的渲染方式的实现...getStaticProps:返回静态页面匹配成功后,需要加载的数据。...On-demand Revalidation(按需增量生成) NextJS提供了更新静态页面的方法,我们可以在 app 目录下新建一个 app/api/revalidate/route.ts接口,用于实现触发增量更新的接口...On-demand Revalidation(按需增量生成) pages路由实现增量生成和app路由类似,我们可以在 pages 目录下新建一个 pages/api/revalidate.ts接口,用于触发增量生成...兜底策略 getStaticPaths 方法中还有一个参数 fallback 用于控制生成静态页面的渲染方式。设置此变量后,我们可以指定路由生成时的页面渲染内容,避免出现报错。

1.5K31
您找到你想要的搜索结果了吗?
是的
没有找到

助力ssr,使用concent为nextjs应用加点料

开源不易,感谢你的支持,❤ star concent^_^ [image.png] 序言 nextjs是一个非常流行的 React 服务端渲染应用框架,它很轻量,简单易上手,社区活跃,所以当我们使用react...写一个需要ssr(server side render)的应用的话,基本都会首选nextjs,concent是一个新生代的react状态管理方案,它内置依赖收集系统,同时兼具有0入侵、可预测、渐进式、高性能的特点...moduleState + 10 }; } }, computed: { doubleNum: ({ num }) => num * 2, // 仅当num发生变化才触发此函数...,而getStaticProps是构建时执行,我们先处理getServerSideProps这种情况吧,看看如何集合concent做预渲染支持。...所以我们的切入点就可以从这里入手了,我们把getStaticProps的返回结果做一下格式约束,形如{module:string, state: object}这样的结构,然后在_app.js文件里记录到

2.4K81

React 设计模式 0x5:服务端渲染 SSR

因为大多数页面都是在服务器端预渲染并在客户端上提供的 图片优化 自动优化图像,现在支持 AVIF 图像,使图像比 WebP 小 20% TypeScript 支持 自动配置和编译 TypeScript 零配置 优秀的开发者体验 使用 NextJS...TBT 越好,Web 应用程序就越快,对您的用户有用,这使得将他们转化为客户更有可能 等待页面进行交互可能会增加跳出率 这是另一个与 SEO 相关的因素 性能 # 缺点 研发管理 如果你想使用 NextJS...为了生成页面,我们需要导出页面组件或 getStaticProps 函数(需要的时候,还可以导出 getStaticPaths 函数)。...) => ( {user.name} ))} ); } export async function getStaticProps...params: { id: user.id }, })); return { paths, fallback: false }; } export async function getStaticProps

3.9K10

html复选框选中与选中触发事件的方法

今天,当制作一个不需要from表单的复选框来提交数据的小函数时,需要在复选框被选中或选中的情况下修改一些后台数据。我想到了用js代码来监控复选框的状态,并将实时数据发送到后台。...复选框选择和取消选择触发事件的方法。 Jq代码_ _点击复选框触发事件我是复选框。 $('#isbox ')。单击(函数(){ 如果($(这个)。...; } }); 本机JS代码_ _单击复选框触发事件。 例如:我是复选框。...功能检查(e) 如果(已检查){ console . log(“checked”); }否则{ Console.log('选中'); } } 例如:我是复选框。...onclick=function(){ if(this.checked){ console . log(“checked”); }否则{ Console.log('选中'); } }; PS:上面两个原生

4.6K40

Next.js进阶:静态生成、服务器端渲染与SEO优化

使用getStaticProps获取静态数据在页面组件中使用getStaticProps生命周期方法获取静态数据。该方法在构建时运行,返回的数据将用于生成静态HTML文件。...jsxexport const getStaticProps = async () => { const posts = await fetchPostsFromApi(); // 获取静态数据 return...获取动态路径列表 return { paths: slugs.map((slug) => ({ params: { slug } })), fallback: 'blocking', // 可选,指定匹配路径的处理策略...};};export const getStaticProps = async (context) => { const post = await fetchPostBySlug(context.params.slug...使用getServerSideProps获取服务器端数据与getStaticProps类似,getServerSideProps也在服务器端运行,但每次用户请求时都会触发。适合需要实时数据的场景。

43210

如何使用 Nx、Next.js 和 TypeScript 构建 Monorepo

接下来,我们需要在要创建 monorepo 的目录中运行以下命令: npx create-nx-workspace@latest nx-nextjs-monorepo 上面的命令将创建一个 Nx 工作区...您可能需要替换nx-nextjs-monorepo为工作区的名称。它可以命名为您喜欢的任何名称。工作空间的名称一般是组织、公司等的名称。...: GetStaticProps = async () => { const client = initializeGraphQL(); await graphQLRequest(client...我们在构建期间通过getStaticProps获取数据,这是一个 Next.js 函数。但是,如果我们在构建期间获取数据,则数据可能会过时。所以,我们使用revalidate选项。.../components": ["libs/components/src/index.ts"] } @nx-nextjs-monorepo/components是我们组件库的名称。

5.5K51

卷起来,前端建站SSG,SSR,ISR,Hydration, Island...一网打尽

NextJs成名已久,功能全面,astro Island 独步天下,qwik No hydration 异军突起。remix 守正出奇,无招胜有招。 今天我们来一块说道说道。...应该是NextJS的首创,从一定程度上优化了SSG了的问题。...serverless function, if // revalidation is enabled and a new request comes in export async function getStaticProps...return { paths, fallback: 'blocking' } } export default Blog 按需刷新 而按需的方式是算是NextJS对上述方式的优化。...上面NextJs的ISR或多或少也是为了解决这个问题。当然另一个更彻底的思路,在边缘的节点上也能有数据持久化的能力,例如cloudflare,或者使用一些分布式的数据库,这里不再展开。

1.8K30

Next.js静态页面渲染技术(静态生成和服务端渲染):BSRSSRSSG

我们可以在服务端这样写:通过getStaticProps获取内容。声明位置:每个page不是默认导出一个函数么,把getStaticProps声明在这个函数旁边即可,默认export导出。...SSG静态化的时机:开发环境:在开发环境每次请求都会运行一次getStaticProps,这是为了方便修改代码时重新运行。...生产环境:getStaticProps只在build时运行一次,这样可以提供一份html给所有用户下载。...使用SSR:这些更新极快的内容我们可以客户端渲染,下拉更新服务端渲染,下拉更新但这次的服务端渲染不能用getStaticProps,因为getStaticProps是在build时执行的,可用getServerSideProps...转载本站文章《next.js静态页面渲染技术(静态生成和服务端渲染):BSR/SSG/SSG》,请注明出处:https://www.zhoulujun.cn/html/webfront/server/nextjs

3.5K20

卷起来,前端建站SSG,SSR,ISR,Hydration, Island...一网打尽

NextJs成名已久,功能全面,astro Island 独步天下,qwik No hydration 异军突起。remix 守正出奇,无招胜有招。今天我们来一块说道说道。...应该是NextJS的首创,从一定程度上优化了SSG了的问题。...a serverless function, if// revalidation is enabled and a new request comes inexport async function getStaticProps...return { paths, fallback: 'blocking' }}export default Blog按需刷新而按需的方式是算是NextJS对上述方式的优化。...上面NextJs的ISR或多或少也是为了解决这个问题。当然另一个更彻底的思路,在边缘的节点上也能有数据持久化的能力,例如cloudflare,或者使用一些分布式的数据库,这里不再展开。

1.8K50

一起来学 next.js - getStaticProps、getStaticPaths 篇

之前讲过 next.js 中的 getServerSideProps,今天来讲一讲另一个很类似的 API:getStaticProps,以及和 getStaticProps 紧密相关的 getStaticPaths...getStaticProps 主要用于构建时落地一些静态数据,但不同于 getServerSideProps,getStaticProps 默认情况下只会在构建时执行一次,之后的每次请求都会使用构建时的数据...使用 先看下 getStaticProps 如何使用,其实和 getServerSideProps 用法差不多: export default function GetStaticProps({ content...将 path 中的 params 传入 getStaticProps 中,执行 getStaticProps 获取返回值。...image.png fallback 此外上面的 DEMO 中可以看到 fallback 参数,fallback 其实有三个可选值:true、false 和 blocking,主要是用于控制访问动态路由时该地址落地成静态页面时的处理

1.1K30

React 服务端渲染

20210126144831765.png 我们以 React 对应的 Next.js 为例,来具体感受服务端渲染; Next.js 框架 中文官网首页,已经介绍的非常清楚了:https://www.nextjs.cn...1].name} // // ) // } ​ // Node 环境下执行 // 文件读写,数据库链接,网络通信 // export async function getStaticProps...有数据的静态生成 getStaticProps() 这个方法官方翻译为 静态生成。是把组件提前编译成 html 文件,然后把整个 html 文件响应到客户端,从而达到预渲染的目的。...getStaticProps() 方法是个异步方法,在 Node 环境下执行(构建时执行),因此可以进行文件读写,数据库链接,网络通信等一些列操作 对于这个方法的使用,先看 demo: import...与 getStaticProps 共同使用,会根据不同的请求参数生成不同的静态页面,它的使用方式比较特殊,代码文件要放在一个目录中,同时代码文件的文件名,要使用 可选项 文件名的形式,如\pages\

2.3K50
领券