ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

nest.js学习(1)

2021-08-01 23:01:37  阅读:218  来源: 互联网

标签:控制器 req 可以 express js 学习 集合 nest


nest.js

中文官网: https://docs.nestjs.cn/8/introduction在这里插入图片描述

基本使用

在这里插入图片描述
当我们按照官网执行开启项目后就如下结构
在这里插入图片描述
app跟模块,控制器,以及提供者。
在这里插入图片描述
控制器用来控制路由,我们首先看下控制器,
在这里插入图片描述
看到这种其实可以想到其用法了,在这里插入图片描述
这里用来写路由相关的控制。
appService是数据提供者,如
在这里插入图片描述
类似于依赖注解这样。

关联Mongodb数据库

在这里插入图片描述

创建集合

在这里插入图片描述

使用

在这里插入图片描述
与express框架这些关联数据库是差不多的。

接口类定义

在这里插入图片描述
这里可以获取到像express中的req.params,req.body,req.query这些,而且比如这个post请求的请求体Body可以定义数据类型在这里插入图片描述
这样就可以正常使用了。
在前台只需要发送这个数据体就可以创建一个贴子,并且存到数据库。

edit

在这里插入图片描述

验证管道

yarn add class-vaildator class-transform
在这里插入图片描述
在这里插入图片描述
当title的属性没有传的时候就会报错。
在这里插入图片描述

使用依赖注入

上面我们写的代码都是类似于express的,后期解耦难,nest官网提供了其他方法
在这里插入图片描述
首先连接,将其导入到appmodule中,
在这里插入图片描述
在这里导入对应的模块,
在这里插入图片描述
使用依赖注入的方法,这样就可以通过catModel访问这个集合。
看实际代码:
npm i --save nestjs-typegoose

连接数据库

在这里插入图片描述

定义集合

在这里插入图片描述

在模块中注册集合

在这里插入图片描述

在控制器中依赖注入

在这里插入图片描述
这样在这个控制器中就可以
在这里插入图片描述
this.PostMode去找打这个集合进行操作。

CRUD

我们可以会对很多模块进行增删改查,所以可以实现一个统一的接口。
yarn add nestjs-mongoose-crud
这个库是b站全栈之巅作者写的,具体用法如图
在这里插入图片描述
讲要用的模型注入进去,然后下面的Model就是通用的了,比如你可以注册Post模型,可以注册user模型等等。接口共用。
在这里插入图片描述
接着把全部接口注释掉,因为这个库默认帮助我们实现五个接口,
在这里插入图片描述
曾删改查。
试下第一个
在这里插入图片描述
正常返回。

提示

在这里插入图片描述
我们可以在定义集合的时候
在这里插入图片描述
这样定义,就有例子了。

接着我们细看这个Crud

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里就可以扩张用法,比如
在这里插入图片描述
给find方法加上装饰器,
在这里插入图片描述

标签:控制器,req,可以,express,js,学习,集合,nest
来源: https://blog.csdn.net/lin_fightin/article/details/119282773

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有