[typescript] 컴파일러 플래그를 사용하여 데코레이터 지원하기
TypeScript는 ECMAScript 6(ES6)에서 도입된 데코레이터를 지원합니다. 그러나 기본적으로 데코레이터 지원이 비활성화되어 있습니다. 이를 활성화하기 위해 컴파일러 플래그를 사용할 수 있습니다. 이번 글에서는 TypeScript 컴파일러 플래그를 사용하여 데코레이터를 지원하는 방법에 대해 알아보겠습니다.
데코레이터란 무엇인가?
데코레이터는 TypeScript나 ES6에서 도입된 메타프로그래밍 기능 중 하나로, 클래스나 클래스 멤버에 추가적인 메타데이터를 부착할 수 있게 해줍니다. 주로 Angular나 NestJS와 같은 프레임워크에서 주로 활용되고 있습니다.
컴파일러 플래그를 사용하여 데코레이터 활성화하기
TypeScript는 --experimentalDecorators
플래그를 사용하여 데코레이터를 활성화할 수 있습니다. 이 플래그를 사용하는 방법은 다음과 같습니다.
tsc --target ES5 --experimentalDecorators
또는 tsconfig.json
파일을 이용하여 설정할 수도 있습니다.
{
"compilerOptions": {
"target": "ES5",
"experimentalDecorators": true
}
}
활성화 후 주의사항
데코레이터를 활성화한 이후에는, 데코레이터를 사용하기 위해 reflect-metadata
라이브러리를 추가해주어야 합니다.
위의 설정을 통해 TypeScript 컴파일러 플래그를 사용하여 데코레이터를 지원할 수 있습니다. 이를 통해 메타프로그래밍 기능을 활용하여 더욱 유연하고 강력한 코드를 작성할 수 있게 됩니다.
참고 문헌:
- TypeScript Handbook: Decorators
- TypeScript 공식 문서