해결된 질문
작성
·
109
·
수정됨
0
제목처럼 명령어 실행시 아래와 같은 오류가 발생했습니다.
Decorating class property failed. Please ensure that transform-class-properties is enabled and r uns after the decorators transform.
이 오류는 타입스크립트 데코레이터와 클래스 필드초기화 문제로 보입니다. 엔티티를 처리하는 과정에서 데코레이터가 클래스 필드와 충돌을 일으키는 것으로 보입니다. 갑자기 생긴 오류에 tsconfig.ts 파일도 수정해보고 엔티티를 다시 점검해봐도 오류가 해결이 안되서 질문드립니다.
오류가 발생하는 부분입니다.
at _initializerWarningHelper (src/entities/DMs.ts:12:964)
at DMs.<instance_members_initializer> (src/entities/DMs.ts:58:286)
at new DMs (src/entities/DMs.ts:58:270)
at EntityMetadata.create (node_modules/src/metadata/EntityMetadata.ts:568:23)
at EntityMetadataValidator.validate (node_modules/src/metadata-builder/EntityMetadataValidator.ts:211:47)
at node_modules/src/metadata-builder/EntityMetadataValidator.ts:43:18
at Array.forEach (<anonymous>)
at EntityMetadataValidator.validateMany (node_modules/src/metadata-builder/EntityMetadataValidator.ts:42:25)
at DataSource.buildMetadatas (node_modules/src/data-source/DataSource.ts:730:33)
at processTicksAndRejections (node:internal/process/task_queues:95:5)
error Command failed with exit code 1.
DMs 엔티티의 문제인가 싶어서 제로초님의 코드를 다시 작성해보고 살펴보아도 문제가 해결되지 않습니다.
추가로 yarn seed명령어도 안됩니다,,,
답변 2
0
안녕하세요, 인프런 AI 인턴입니다. 서기문님,
제공해주신 오류 내용을 기반으로 살펴보면, 이 문제는 주로 TypeScript와 Babel을 사용하면서 데코레이터와 관련된 설정이 맞지 않을 때 발생하는 오류입니다. 특히, 데코레이터를 사용하여 클래스를 정의할 때 발생할 수 있는 문제입니다.
다음은 이 문제를 해결하기 위한 몇 가지 일반적인 권장사항입니다:
babel 설정 확인:
@babel/plugin-proposal-decorators
와 @babel/plugin-proposal-class-properties
플러그인을 설치하고 사용 중인지 확인하세요..babelrc
또는 babel.config.js
에서 두 플러그인의 순서가 정확해야 합니다. 데코레이터 플러그인이 클래스 속성 플러그인보다 앞에 있어야 합니다.tsconfig.json 파일 설정 확인:
experimentalDecorators
와 emitDecoratorMetadata
설정이 true
로 되어 있는지 확인해야 합니다. 만약 이미 설정하셨다면, 이 부분은 문제가 아닐 가능성이 큽니다.데코레이터 사용하는 방식 점검:
유사한 문제에 대한 다음의 게시물을 참고하시면 문제 해결에 도움이 될 수 있습니다:
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
package.json파일인데 어디가 문제인지 모르겠습니다.
버전을 맞췄는데도 불구하고 오류가 발생합니다.