> 백엔드 개발 > Golang > TypeScript 인터페이스를 Go 구조체로 변환하는 방법은 무엇입니까?

TypeScript 인터페이스를 Go 구조체로 변환하는 방법은 무엇입니까?

WBOY
풀어 주다: 2024-02-09 10:36:27
앞으로
1222명이 탐색했습니다.

如何将 TypeScript 接口转换为 Go 结构体?

php 편집기 Xinyi가 TypeScript 인터페이스를 Go 구조로 변환하는 방법을 소개합니다. 프런트 엔드에서 TypeScript를 사용하여 개발할 때 데이터 구조를 설명하기 위해 인터페이스를 정의하는 경우가 많습니다. Go 언어를 사용하여 백엔드에서 개발할 때 이러한 인터페이스를 해당 구조로 변환해야 합니다. 이 글에서는 기본 유형, 중첩 유형, 선택적 유형 등을 변환하는 방법을 자세히 설명합니다. 이 글의 지침을 통해 TypeScript 인터페이스를 Go 구조로 쉽게 변환하고 개발 효율성을 향상시킬 수 있습니다.

질문 내용

타입스크립트로 만든 객체 모델링 도구를 변환하려고 합니다.

내가 TypeScript에 가지고 있는 내용은 다음과 같습니다.

으아악

이렇게 할 수 있어요:

으아악

바둑에 대한 나의 지식은 여기까지입니다:

으아악

주로 스키마 유형 인터페이스의 동적 "키" 때문에 약간 꼼짝 못하는데, 이동 중에 이를 복제하는 방법을 모르겠습니다...

해결 방법

[key string]: 部分意味着它是一个键类型为 string 的字典。在 go 中,这将是 map[string]<some 类型 >.

으아악

또는 삭제 schematype 类型并更改 schema:

으아악

이제 다른 필드와 관련하여 정의하면 이상해 보이고 여기에 표시된 방식으로 작동하지 않을 가능성이 높습니다.

default 将是一个值,而不是 func() (不返回任何内容的函数)。您不知道该值是什么类型,因此该类型应该是 interface {}any (自 go 1.18 起 - interface {}의 별칭).

transform - 这可能是一个接受值、转换它并返回值的函数 - func(interface{}) 接口{}

이 맥락에서 minlengthmaxlengthvalidate가 무엇을 의미하는지 잘 모르겠습니다. 왜 자바스크립트에서 배열인지, 길이가 정확히 2인지 확인하는 방법을 모르겠습니다.

위 내용은 TypeScript 인터페이스를 Go 구조체로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:stackoverflow.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿