728x90
반응형
1.0 Overview
Nestjs 시작하기
npm run start:dev
—> localhost:3000 으로 갈 수 있게 해준다는 뜻
src 파일을 헤쳐보자
app.controller.spec.ts
→ Controller 테스트 파일
app.controller.ts
→ Controller 파일
app.module.ts
→ Module 파일
app.service.ts
→ Service 파일
main.ts
→ app.js 와 비슷한 기능의 파일
1.1 / 1.2 ARCHITECTURE OF NEST.JS
main
→ main.ts 가 모든 걸 시작
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
await app.listen(3000);
}
bootstrap();
module
→ 하나의 AppModule 에서 어플리케이션 생성
ex) 인증을 담당하는 어플리케이션 → users module
ex) Instagram 이라면? → photos module 필요하고 videos module 도 필요함.
import { Module } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
@Module({
imports: [],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {}
controller
→ controller 가 하는일은 기본적으로 url을 가져오고 함수를 실행하는 것.
→ express 의 router 같은 존재
→ spec 파일은 test 파일
→ url을 가져오고 함수를 실행하는 것 뿐
import { Controller, Get } from '@nestjs/common';
import { AppService } from './app.service';
@Controller()
export class AppController {
constructor(private readonly appService: AppService) {}
@Get()
getHello(): string {
return this.appService.getHello();
}
// express의 router 같은 형식으로 쓰였다.
@Get("/hello")
sayHello(): string {
return this.appService.getHi();
}
}
Services
→ NestJS 는 Controller 를 비지니스 로직이랑 구분 짓고 싶어함.
→ Controller 에서 나온 비즈니스 로직이 Service로 간다. → 실제로 함수를 가지는 부분
→ 실제로 비즈니스 로직을 실행하는 역할
import { Injectable } from '@nestjs/common';
@Injectable()
export class AppService {
getHello(): string {
return 'Hello Nest!!';
}
getHi():string {
return 'Hi Nest';
}
}
- Delete ␍ prettier/prettier 해결 방법
해결방법
프로젝트 폴더 내 .esLint 파일을 아래와 같이 수정해놓자. 저장 후 npm을 재실행하면 정상동작됨을 확인 할 수있었다.
rules: {
'prettier/prettier': [
'error',
{
endOfLine: 'auto',
},
],
},
→ npm 재시작
728x90
반응형
'📘 𝐭𝐢𝐥 > 일간 회고' 카테고리의 다른 글
[23.02.28] (0) | 2023.02.28 |
---|---|
[23.02.25] (0) | 2023.02.25 |
[23.02.23] (0) | 2023.02.23 |
[23.02.20] (1) | 2023.02.20 |
[23.02.18] (0) | 2023.02.18 |