Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

139
Visualizações
Nombres de propiedades JSON con puntos en Javascript usando una biblioteca similar a Jackson

Necesito crear un Json con nombres de campo con puntos '.' en la aplicación javascript (mecanografiado)

Salida esperada de Json:

 { "tasks.max": "1", "key.converter": "io.confluent.connect.avro.AvroConverter", "topics": "eraseme_topic_schema_test_v05" }

Probé ts-jackson y jackson-js, Ejemplo de código usando ts-jackson

MiDominio.ts

 @Serializable() import { JsonProperty,Serializable } from 'ts-jackson'; export class MyDomain{ @JsonProperty({path: 'tasks.max', elementType: String}) tasks_max: string; @JsonProperty({path: 'key.converter'}) key_converter: string; @JsonProperty({path: 'topics'}) topics: string; }

Pero las propiedades con puntos se crean como subclases en la salida Json en lugar de un campo de propiedad con punto.

 { tasks: { max: '1' }, key: { converter: { schema: [Object] } }, topics: 'eraseme_topic_schema_test_v05' }

¿Cómo puedo establecer puntos en el nombre de los campos Json en Javascript usando una biblioteca similar a Jackson?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Este comentario de joniba en el repositorio de github de lodash muestra cómo acceder a las propiedades que contienen puntos usando lodash:

 // lodash set const o = {} _.set(o, 'a["bc"]', 1) // returns { a: { 'b.c': 1 } }

Esto funciona con lodash obtener:

 // lodash get const obj = {'a.b': 'value'}; _.get(obj, '["ab"]'); // 'value'

Por lo tanto, debería ser posible escribir las propiedades de la path ts-jackson de esta manera:

 export class MyDomain{ @JsonProperty({path: '["tasks.max"]', elementType: String}) tasks_max: string; @JsonProperty({path: '["key.converter"]'}) key_converter: string; @JsonProperty({path: 'topics'}) topics: string; }
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda