NestJS 中的依赖注入是如何工作的?

NestJS 使用依赖注入(DI)来管理组件之间的依赖关系。通过在类的构造函数中使用 @Injectable() 装饰器,可以将服务注入到控制器或其他服务中。例如:

typescript复制代码

typescript 复制代码
import { Injectable } from '@nestjs/common';

@Injectable()
export class MyService {
  getData() {
    return 'Hello, World!';
  }
}

在控制器中注入服务:

typescript复制代码

typescript 复制代码
import { Controller, Get } from '@nestjs/common';
import { MyService } from './my.service';

@Controller()
export class MyController {
  constructor(private readonly myService: MyService) {}

  @Get()
  getData() {
    return this.myService.getData();
  }
}

NestJS 的 DI 容器会在运行时自动实例化服务,并将其注入到需要的地方。

相关推荐
IT_陈寒6 小时前
折腾一天才明白:Vite的热更新为什么偶尔会罢工
前端·人工智能·后端
AI茶水间管理员6 小时前
学习ClaudeCode源码之Agent核心循环
前端·人工智能·后端
挖稀泥的工人7 小时前
AI聊天界面的布局细节和打字跟随方法
前端·javascript·面试
竹林8187 小时前
从“连接失败”到丝滑登录:我用 ethers.js 连接 MetaMask 的完整踩坑记录
前端·javascript
颜酱7 小时前
图片大模型实践:可灵(Kling)文生图前后端实现
前端·javascript·人工智能
木斯佳7 小时前
前端八股文面经大全:腾讯CSIG实习面(2026-04-10)·面经深度解析
前端·ai·xss·埋点·实习面经
夏暖冬凉7 小时前
npm发布流程(记录遇到的问题)
前端·npm·node.js
XPoet7 小时前
AI 编程工程化:Subagent——给你的 AI 员工打造协作助手
前端·后端·ai编程
心连欣8 小时前
解锁对象遍历:当字符串遇上for...in循环
前端·javascript
Sestid8 小时前
前端Cursor使用指南(后续会更新Claude)
前端·claude·cursor