这是我参与[第五届青训营]伴学笔记创作活动的第11天,继续和大家分享自己学习《Next.js实战项目》章节课程的收获。
一、本堂课重点内容
- Nextjs服务端开发
- 核心功能讲解
二、详细知识点介绍
1.BFF层开发
和Express等开发类似,区别是并没有参数可以直接区别请求类型。
2.调试方式
3.Strapi - headless CMS
一个接口的生成有以下几个过程:
- content-type builder编辑结构体
- content manager 配置数据源,并且发布
- setting roles里选择对应角色并勾选要发布的接口类型
- 如果涉及嵌套,在接口后面加上populate=deep参数,没安装加参数populate=* ,但只能嵌套一层。
4.核心功能讲解
(1)首页功能实现
- 页面&动画&多媒体适配
- BFF
- Strapi
(2)功能页功能实现
- 页面&动画&多媒体适配
- BFF
- Strapi分页:/api/articles?/pagination[page]=1&pagination[pageSize]=10(按10个/页分页,返回第一页的数据)
- 多媒体格式的转换
-
- markdown转Html:npm install showdown --save
-
- html转dom: dangerouslySetInnerHTML
-
- 公共样式的定义
(3)主题化功能实现
- 基础样式和背景的抽离
- 主题化context全局注入
- 从注入数据中取出theme和setTheme
- 多进程间的主题同步
三、课后个人总结
本节课的主要内容是nextjs实战项目,老师从CSR, SSR, SSG、什么是 Next.js、Next.js 客户端开发、Next.js 服务端开发、项目核心功能讲解等五方面进行讲解和介绍,让我对nextjs实战项目有了一个宏观上的认知。对于自己而言,本节课的内容不仅理论知识较为生疏,而且实践上存在较大的难度。要想熟练地实操,还需要先把理论知识了解清楚,但只知道理论是远远不够的,还需要辅以实践练习深入掌握。