jsonecho

XML TypeScript 변환

XML 문서를 붙여 넣으면 그 구조에 맞는 TypeScript 타입을 얻습니다.

도구를 불러오는 중...

XML TypeScript 변환 사용 방법

  1. 대표적인 XML 샘플을 붙여 넣으세요. 가능하면 선택적 필드가 모두 채워진 것이 좋습니다.
  2. 루트 타입의 이름을 설정하고 헬퍼 코드도 원하는지 타입만 원하는지 결정하세요.
  3. 생성된 TypeScript 코드를 프로젝트에 복사하세요.

XML TypeScript 변환 소개

큰 XML 페이로드에 대한 모델 클래스를 직접 작성하는 일은 지루하고 오타가 끼어드는 곳입니다. 여기에 샘플을 붙여 넣으면 생성기가 구조를 파악합니다. 어떤 필드가 있고, 어떤 것이 객체이고, 어떤 것이 배열이며, 각 값이 어떤 타입인지입니다. 출력은 모든 객체에 대한 인터페이스입니다. "타입만"의 선택을 해제하면 런타임 검사가 있는 Convert 클래스가 추가됩니다.

XML은 먼저 XML JSON 변환 도구와 같은 방식으로 JSON으로 변환됩니다. 속성에는 @_ 접두사가 붙고 속성 옆의 텍스트 내용은 #text라고 부릅니다. TypeScript 타입은 그 결과로 생성됩니다. 인터페이스는 컴파일 시점에만 존재합니다. 들어오는 데이터를 런타임에 검사해야 한다면 Convert 클래스를 유지하세요.

생성된 코드 사용하기

const data: Root = JSON.parse(text)로 캐스팅하거나, 검증이 필요하면 생성된 Convert.toRoot(text)를 사용하세요.

선택적 프로퍼티는 물음표로 쓰고, null 가능한 것은 string | null로 씁니다.

자주 묻는 질문

생성된 TypeScript 코드는 무엇에 의존하나요?

출력은 모든 객체에 대한 인터페이스입니다. "타입만"의 선택을 해제하면 런타임 검사가 있는 Convert 클래스가 추가됩니다.

결과로 XML을 파싱하려면 어떻게 하나요?

먼저 XML을 JSON으로 변환한 다음(XML JSON 변환 도구가 같은 방식으로 처리합니다) const data: Root = JSON.parse(text)로 캐스팅하거나, 검증이 필요하면 생성된 Convert.toRoot(text)를 사용하세요.

선택적 필드와 없는 필드는 어떻게 처리되나요?

선택적 프로퍼티는 물음표로 쓰고, null 가능한 것은 string | null로 씁니다.

생성기가 둘 이상의 레코드를 살펴보나요?

샘플에 있는 것만 알 수 있습니다. 예시에 없는 필드는 타입에 나타나지 않고, 예시에서 값이 null이면 그 타입은 알 수 없습니다. 가능한 한 많은 필드가 채워진 예시를 붙여 넣거나 서로 다른 레코드가 여러 개 있는 배열을 붙여 넣으세요.

내 XML이 서버로 전송되나요?

아니요. 생성기는 처음 사용할 때 브라우저로 다운로드되며 크기는 약 1MB이고 모든 것이 로컬에서 실행됩니다.

데이터를 클래스로의 다른 도구

모든 도구 →