Creating and Using a Service
Stryg for at vise menuen
Open the src folder and create a new file:
users.service.ts
Add the following code:
import { Injectable } from '@nestjs/common';
@Injectable()
export class UsersService {
getAllUsers() {
return ['Alice', 'Bob'];
}
}
This service contains the logic for working with users.
Now register the service in your module.
Open app.module.ts and update it:
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { UsersController } from './users.controller';
import { UsersService } from './users.service';
@Module({
imports: [],
controllers: [AppController, UsersController],
providers: [AppService, UsersService],
})
export class AppModule {}
Here is what is happening:
providers: registers services used in the app;UsersService: makes the service available for use.
Now use the service inside your controller:
import { Controller, Get } from '@nestjs/common';
import { UsersService } from './users.service';
@Controller('users')
export class UsersController {
constructor(private usersService: UsersService) {}
@Get()
getUsers() {
return this.usersService.getAllUsers();
}
}
constructor: injects the service;usersService: gives access to service methods;getUsers(): calls the service and returns data.
Now when you open /users, the data comes from the service instead of being defined in the controller.
Var alt klart?
Tak for dine kommentarer!
Sektion 1. Kapitel 10
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Sektion 1. Kapitel 10