[ TypeScript Error ] '~' 형식에 '~' 속성이 없습니다.

한대희·2023년 5월 27일
0

TypeScript

목록 보기
12/13
post-thumbnail

에러

  • 아래와 같이 ~ 형식에 ~ 속성이 없다는 오류가 발생 하였다.
  • 여기서 '형식' 은 타입을 의미하고, '속성'은 프로퍼티를 의미한다.
  • 따라서 아래의 오류는 object라는 타입에 , id라는 프로퍼티가 없다는 뜻이다.

원인

  • 아래와 같이 객체의 타입을 object라고만 지정을 하고, 점 표기법으로 객체의 프로퍼티에 접근을 해서 발생한 오류
  • object타입은 그냥 해당 변수의 타입이 객체라고만 지정할 뿐 그 안에 담긴 값에 대한 타입이 지정 되지 않는다.
let user: object = {
  id: 1,
  name: "한대희",
};

user.id

해결 방법

  • 객체 리터럴 방식으로 객체의 타입을 지정해 줘야 한다.
// 😀 object1 이라는 타입을 만들고, 각각의 프로퍼티에 대한 타입을 모두 지정해 준다.
type object1 = {
  id: number,
  name: string
}

// 😀 user의 타입을 object1 으로 지정
let user: object1 = {
  id: 1,
  name: "한대희",
};

// 😀 에러가 발생하지 않는다.
user.id
profile
개발 블로그

0개의 댓글