点击下载:[18章]Vue3+NestJS 全栈开发企业级管理后台 提取码:zzbv
Next.js 是一个用于构建现代化 React 应用程序的框架。它强调性能、开发体验和 SEO 优化,是许多 React 开发者的首选。Next.js 提供了许多功能,包括:
服务器渲染: Next.js 允许在服务器端渲染 React 应用程序,从而提高了应用程序的性能和 SEO。
静态网站生成(SSG): 你可以使用 Next.js 生成静态网站,以提供更快的加载速度和更好的用户体验。
热模块替换(HMR): Next.js 支持热模块替换,使开发者可以在不刷新页面的情况下实时预览更改。
路由和数据预取: Next.js 提供了简单易用的路由系统,并支持数据预取以优化页面加载。
NestJS 的一些优势包括:
构建在现代 JavaScript 栈之上,因此使用了最新的 JavaScript 技术。
基于 Angular 的架构和语法,提供了强大的模块化系统和依赖注入功能。
基于 TypeScript,提供了强类型和静态类型检查。
提供了丰富的工具和模块,可用于构建各种类型的服务器端应用程序,包括 RESTful API、GraphQL API、WebSocket 服务器等。
提供了一组可扩展的构建块,可用于快速构建应用程序。
提供了与主流数据库和身份验证系统的集成。
准备工作
首先我们要把 Nest.js 服务端跑起来,并且支持 api 接口、静态页面。
Nest.js 创建一个 crud 服务是非常快的,只需要这么几步:
安装 @nest/cli,使用 nest new xxx 创建一个 Nest.js 的项目,
在根目录执行 nest g resource person 快速生成 person 模块的 crud 代码
npm run start 启动 Nest.js 服务
这样一个有 person 的 crud 接口的服务就跑起来了,是不是非常快
在前面我们知道了,NestJs的项目结构是由Controller、Service、Module三个主要部分组成的,它们共同组成一个模块。
Controller: 控制器,通过@Controller()装饰器定义的类,目的是接收应用的特定请求。路由机制控制哪个控制器接收哪些请求。通常,每个控制器有多个路由,不同的路由可以执行不同的操作。它的功能类似Spring,主要就是为前端提供api接口,以及一些简单的验证。
Service: 提供者,又称为Provider,通过@Injectable()装饰器定义的类,功能也类似Spring的服务层,主要负责处理具体的业务,逻辑代码一般都写在这里。