반응형
Typescript : 중첩 된 개체에 대한 인터페이스를 어떻게 정의합니까?
다음과 같이 구문 분석하는 JSON 페이로드가 있다고 가정합니다.
{
name: "test",
items: {
"a": {
id: 1,
size: 10
},
"b": {
id: 2,
size: 34
}
}
}
항목 속성의 값이 키가 문자열이고 해당 값이 Item 인터페이스에 의해 정의 된 객체임을 모델링하기 위해 Example 인터페이스의 정의를 어떻게 설정합니까?
export interface Example {
name: string;
items: ???;
}
export interface Item {
id: number;
size: number;
}
Typescript를 사용하면 구문을 사용하여 객체 키의 유형을 추가 할 수 있습니다 [key: string]
.
문서에 명시된대로이를 색인 생성 가능한 유형 이라고 합니다 .
인덱싱 가능한 형식에는 인덱싱 할 때 해당 반환 형식과 함께 개체에 인덱싱하는 데 사용할 수있는 형식을 설명하는 인덱스 서명이 있습니다.
귀하의 경우 다음을 사용합니다.
export interface Item {
id: number;
size: number;
}
export interface Example {
name: string;
items: {
[key: string]: Item
};
}
참고로 여기 에 라이브 예제 링크가 있습니다 .
반응형
'developer tip' 카테고리의 다른 글
Git 정리 란 무엇입니까? (0) | 2020.11.15 |
---|---|
생성기를 사용한 비동기 / 대기 및 ES6 수율의 차이점 (0) | 2020.11.15 |
레이아웃이 iOS 상태 표시 줄과 겹치는 것을 방지하는 방법 (0) | 2020.11.15 |
WiX ICE 유효성 검사 오류 (0) | 2020.11.14 |
SourceTree 오류 : 1407742E : SSL 루틴 : SSL23_GET_SERVER_HELLO : tlsv1 경보 프로토콜 버전 (0) | 2020.11.14 |