Next.js 实战项目| 青训营笔记

206 阅读1分钟

这是我参与「第五届青训营 」笔记创作活动的第11天

tip:next.js适用于C端应用(面向互联网),不适应B端应用(管理者)。

CSR, SSR, SSG(三种渲染方式)

CSR客户端渲染,前后端分离,适合B端 SSR服务器渲染,适合C端 SSG静态站点生成,依赖CDN,减少服务器压力,但是项目偏静态展示。

什么是 Next.js

React版SSR框架,Next.js提供api

Next.js 客户端开发

Next.js

初始化npx create-next-app@latest --typescript

配置文件next.config.jsnextjs

数据获取

getServerSideProps 服务端渲染 指定页面渲染模式是 SSR

getStaticProps 静态站点生成(构建时执行) 指定页面渲染模式是 SSG

getStaticPaths 静态站点生成(构建时执行) 涉及动态路由时使用

CSS modules

原生支持 CSS modules 指定 CSS 文件为 *.module.css 启用 作用:每个文件都是唯一的css,名字可一样。

文件式路由

pages文件夹内的文件自动被视为路由 pages/api文件夹内文件自动被视为服务器端接口

路由跳转

link(next/link) useRouter(next/router)

header 设置

Head(next/head)

多媒体适配CSS 适配

利用 CSS 变量和媒体查询实现 @media screen and (max-width: 1000px) 或使用 JS 实现组件适配

大图优化

使用 webp 图片 可以使用在线转换器

Next.js 服务端开发

CMS:

Strapi编写CMS的api 具体:strapi.io/

文章页:

主题化:

通过修改scss全局变量,用tools,甚至把参数暴露给用户,实现个性化。思考:多进程同步,注入数据