O conversor JSON to TypeScript lê um valor JSON de amostra — uma resposta da API, um arquivo de configuração, um registro do banco de dados — e escreve as interfaces do tipo que descrevem. Os objetos aninhados se tornam suas próprias interfaces nomeadas, as matrizes de objetos são mescladas em uma única interface de elemento em vez de uma união extensa e as chaves que são nulas ou ausentes em alguns registros são marcadas como opcional. Você cola dados que você já possui; você obtém tipos que, de outra forma, escreveria à mão.
Digitar manualmente uma resposta de API é tedioso e propenso a erros de uma maneira específica: você digita o que *pensa* o ponto final retorna, não o que ele realmente retornou. Campos que você nunca notou são omitidos, um número inteiro que às vezes é nulo é digitado como `número` e o erro aparece no tempo de execução na produção e não no seu editor. Gerar tipos diretamente de uma carga real fecha essa lacuna, porque a forma que você compila é a forma que o servidor realmente enviou.
Tudo é executado no seu navegador. O mecanismo de inferência é um script de dependência sem dependência, não um wrapper em torno de um serviço remoto, então cargas úteis - que rotineiramente carregam tokens de acesso, registros de clientes e IDs internos - nunca saem da página. Escolha Interfaces ou digite alias, alterne a palavra-chave `export` e os modificadores `readonly`, escolha a largura do recuo e copie a saída ou baixe um arquivo .ts.
Solte uma resposta da API, um arquivo de fixture ou qualquer valor JSON. Carregue a amostra primeiro se quiser ver como objetos, matrizes e campos nulos são tratados.
Defina o nome do tipo de raiz — geralmente o recurso, como usuário ou fatura. As interfaces aninhadas são nomeadas automaticamente a partir de sua chave, com nomes de elementos de matriz singularizados (liberações se tornam release).
Escolha Interface ou digite alias, decida se você deve exportar cada declaração, adicionar modificadores de leitura se sua base de código preferir formas imutáveis e defina o recuo para 2 ou 4 espaços.
Pressione gerar. Revise os opcionais e sindicatos inferidos, copie o código para sua área de transferência ou baixe-o como um arquivo .ts pronto para ser lançado na sua pasta de tipos.
Cada objeto aninhado se torna sua própria interface reutilizável com nome em vez de uma forma anônima embutida, para que você possa importar e fazer referência aos tipos internos de forma independente.
Uma matriz de objetos é mesclada em um elemento de interface. As chaves presentes em alguns registros, mas não em outras, se tornam opcionais, o que é exatamente o comportamento da API paginada real.
Escolha se um valor nulo significa que a chave é opcional ou se null pertence à união. Ambas as convenções são comuns; a ferramenta não força um em sua base de código.
Emite `usuário de interface {}` ou `type user = {}` para corresponder às regras de lint existentes, com modificadores `export` e `redonly' opcionais aplicados de forma consistente em todas as declarações.
Format, validate, and minify JSON data
Convert JSON to clean, valid YAML instantly — configurable indentation and safe string quoting
Convert JSON to well-formed XML instantly. Map object keys to elements, @-prefixed keys to attributes and #text to content, expand arrays into repeated tags, and export minified or pretty-printed XML. 100% client-side.
0 comments
No comments yet. Be the first to share your thoughts!