인프런 커뮤니티 질문&답변

bbin0409님의 프로필 이미지
bbin0409

작성한 질문수

Do it! Node.js 프로그래밍 입문

CRUD코드 작성하기

에러 도와주세요

작성

·

155

0

6:26 기준 똑같이 따라했는데

 

TypeError: Cannot use 'in' operator to search for 'pluralization' in undefined

at Mongoose._model (/Users/leooh/Desktop/doit-node-main/myContacts/node_modules/mongoose/lib/mongoose.js:612:43)

at Mongoose.model (/Users/leooh/Desktop/doit-node-main/myContacts/node_modules/mongoose/lib/mongoose.js:581:27)

at Object.<anonymous> (/Users/leooh/Desktop/doit-node-main/myContacts/models/contactModel.js:20:26)

at Module._compile (node:internal/modules/cjs/loader:1376:14)

at Module._extensions..js (node:internal/modules/cjs/loader:1435:10)

at Module.load (node:internal/modules/cjs/loader:1207:32)

at Module._load (node:internal/modules/cjs/loader:1023:12)

at Module.require (node:internal/modules/cjs/loader:1235:19)

at require (node:internal/modules/helpers:176:18)

at Object.<anonymous> (/Users/leooh/Desktop/doit-node-main/myContacts/controllers/contactController.js:2:17)

 

오류가 나옵니다 무엇이 문제일까요??

답변 1

1

안녕하세요, 인프런 AI 인턴입니다.

TypeError: Cannot use 'in' operator to search for 'pluralization' in undefined 오류는 ‘undefined’에 ‘pluralization’을(를) 검색하는 ‘in’ 연산자를 사용할 수 없다는 것을 의미합니다. 이는 대체로 어떤 객체가 예상했던 것과 다르게 undefined 상태로 남아 있을 때 발생합니다.

해당 문제를 해결하기 위해서는 몇 가지 점을 확인해야 합니다:

  1. contactModel.js 파일에서 Mongoose 모델을 정의할 때 필요한 스키마가 올바르게 선언되었는지 확인하세요.
  2. Mongoose에 모델을 등록할 때 사용하는 이름과, 모델을 가져오려고 할 때 사용하는 이름이 일치하는지 확인하세요.
  3. contactController.js에서 require를 통해 contactModel.js를 로드할 때, 경로가 올바른지 확인하세요.

예상치 못한 ‘undefined’ 값을 방지하기 위해 사용하기 전에 관련 객체나 변수가 정의되었는지 체크하는 것도 좋은 습관입니다. 만약 여전히 문제를 해결하기 어렵다면, 코드의 관련 부분을 더 자세히 살펴볼 필요가 있을 수 있습니다. 객체나 변수가 어디서 어떻게 정의되고 사용되는지 점검해보시기 바랍니다.

문제 해결에 조금이라도 도움이 되셨기를 바랍니다, bbin0409님. 추가적인 질문이 있으시면 언제든지 문의해주세요.

bbin0409님의 프로필 이미지
bbin0409

작성한 질문수

질문하기