一、关于 NestJS 中的服务
- Nestjs 中的服务可以是 service 也可以是 provider。他们都可以通过 constructor 注入依赖关系。服务本质上就是通过@Injectable() 装饰器注解的类。在 Nestjs 中服务相 当于 MVC 的 Model
二、NestJS 中创建和使用服务
1、创建服务
nest g service user
2、使用服务
- 1、需要在根模块引入并配置 ```typescript // src/app.module.ts import { Module } from ‘@nestjs/common’; import { AppController } from ‘./app.controller’; import { AppService } from ‘./app.service’; import { ArticleController } from ‘./article/article.controller’; import { NewsService } from ‘./news/news.service’; // 引入新建的 service 服务 import { NewsController } from ‘./news/news.controller’;
@Module({ imports: [], controllers: [AppController, ArticleController, NewsController], providers: [AppService, NewsService], // 注入新建的 service 服务 }) export class AppModule { }
- 2、在用到的地方引入并配置
```typescript
import { Controller, Get, Render } from '@nestjs/common';
import { NewsService } from './news.service'; // 引入news.service
@Controller('news')
export class NewsController {
// 注入 news 的 service 依赖
constructor(private readonly newsService: NewsService) { }
@Get()
@Render('default/news') // 指定模板
index() {
return {
// 在这里就可以拿到news.service中的数据
newsList: this.newsService.findAll()
}
}
}