TypeError: Class constructor Model cannot be invoked without 'new'
요즘 타입스크립트를 사용해서 저번에 진행했던 프로젝트 리팩터링을 진행하고 있는데 프로젝트에 사용한 ORM이 sequelize였다. 그래서 sequelize에 타입스크립트를 적용해서 model폴더에 index.ts 부분을 타입스크립트로 수정하고 ORM이 db에 잘 접근을 하는지 확인하기 위해서 라우터를 하나만들어서 user 테이블에 모든 정보면 가져오는 쿼리문을 작성하고 api 테스트를 돌려봤느데
TypeError: Class constructor Model cannot be invoked without 'new'
이런 에러가 나왔다. 일단 문장을 살펴보니까 클래서 모델은 new키워드 없이 호출 할 수 없다?? 이렇게 해석했다. 그래서 이게 뭐지 하고 이것저것 만져보다가 에러에 대해서 검색을 해보니까 tsconfig.json에서 설정을 잘못해줘서 그런거라고 했다.
{
"compilerOptions": {
"lib": ["es2015", "es2016", "es2017", "es2018", "es2019", "es2020"],
"moduleResolution": "node",
}
}
원래 나의 코드는 위와 같이 작서을 해줬는데 여기에
{
"compilerOptions": {
"target": "es6",
"lib": ["es2015", "es2016", "es2017", "es2018", "es2019", "es2020"],
"moduleResolution": "node",
}
}
target 항목에 es6를 추가해주면 되는 문제라고해서 금방 해결 할 수 있었다.
Author And Source
이 문제에 관하여(TypeError: Class constructor Model cannot be invoked without 'new'), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@rlagudwog/TypeError-Class-constructor-Model-cannot-be-invoked-without-new저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)