第四章 Nest provider


实现我们先创建一个nest 项目

nest new provider

在这里插入图片描述

1、provider的基础用法解释

首先我们打开一下项目下的文件(app.service.ts) 可以看到可以看到 AppService 是被 @Injectable 修饰的 class
1716708573247.png
接着我们打开 app.module.s 可以看到 Module 的 providers 里声明了 AppService,这就是provider 如下图
1716708920516.png
其实 AppService 是一种简写方式 完整的方式如下:
1716709023352.png
provide 指定 token
useClass 指定对象的类,Nest 会自动对它做实例化后用来注入
接着我们看 app.controller.ts 在这个文件里面 AppController 的构造器里参数里声明了 AppService 的依赖,就会自动注入 如下图

在这里插入图片描述


此处有两种注入方式:
构造器注入 也就是上图的

constructor(private readonly appService: AppService) {
   }

属性注入

@Inject(AppService
### 关于 Nest.js 第二十四章 的内容 对于特定章节如第二十四章的具体内容,在官方文档或是常见的开源教程中未必有如此精确的划分方式。通常,Nest.js 的学习资源按照功能模块或主题来组织,而不是采用线性的章节数字标记[^1]。 如果希望获取类似于“第二十四章”的深入内容,建议关注以下几个方面: #### 深入理解依赖注入 NestJS 构建在其强大的依赖注入机制之上,这使得应用程序组件之间的解耦变得容易实现。通过研究高级依赖管理技巧,可以达到更深层次的理解[^2]。 ```typescript import { Injectable, Inject } from '@nestjs/common'; @Injectable() class MyService { constructor(@Inject('API_KEY') private readonly apiKey: string) {} } ``` #### 探索微服务架构支持 除了传统的 HTTP 请求处理外,NestJS 提供了多种通信协议的支持用于构建微服务体系结构,包括 gRPC 和 MQTT 等消息队列技术[^3]。 ```typescript // app.module.ts 中配置 MicroserviceOptions const microserviceOptions = { transport: Transport.TCP, }; app.connectMicroservice(microserviceOptions); await app.startAllMicroservices(); ``` #### GraphQL API 开发指南 随着 GraphQL 成为 RESTful Web Services 的有力竞争者之一,掌握如何利用 ClassValidator 及其他工具快速搭建安全可靠的 GraphQL APIs 对开发者来说至关重要[^4]。 ```graphql type Query { hello(name: String): String! } schema { query: Query } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

枫ゞ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值