Sendgrid-nodejs: Definición de tipo incorrecta para los datos de personalización

Creado en 7 mar. 2019  ·  3Comentarios  ·  Fuente: sendgrid/sendgrid-nodejs

La definición de tipo para PersonalizationData contiene un campo llamado dynamicTemplateData . Sin embargo, la API de SendGrid espera un campo llamado dynamic_template_data . Como resultado, los usuarios de TypeScript actualmente tienen que convertir el objeto MailData para escribir any si quieren usar el método sgMail.send() sin un error de compilación:

sgMail.send({
        personalizations: [
          {
            to: "[email protected]",
            dynamic_template_data: {
                field1: "value1",
                field2: "value2"
            }
          }
        ],
        from: 'noreply<strong i="12">@email</strong>',
        templateId: "xxxxxxxx"
    } as any);

Por lo tanto, el nombre del campo en el tipo PersonalizationData debe cambiarse para que coincida con lo que espera la API, o debe ocurrir un mapeo desde dynamicTemplateData => dynamic_template_data .

medium help wanted help wanted community enhancement up for grabs up-for-grabs

Comentario más útil

@egges problema similar que tuve.

Para los interesados, así es como solucioné el problema.
https://github.com/sendgrid/sendgrid-nodejs/pull/716#issuecomment -472932577

misma pregunta a @thinkingserious , ¿por qué si esto aún no se ha implementado? Las relaciones públicas están listas y son un gran problema para los mecanografiados 😄

Todos 3 comentarios

¡Gracias @egges!

Este es un gran truco y lo agregué a nuestro backlog para una actualización o quizás obtengamos un PR.

Con los mejores deseos,

Elmer

@egges problema similar que tuve.

Para los interesados, así es como solucioné el problema.
https://github.com/sendgrid/sendgrid-nodejs/pull/716#issuecomment -472932577

misma pregunta a @thinkingserious , ¿por qué si esto aún no se ha implementado? Las relaciones públicas están listas y son un gran problema para los mecanografiados 😄

Por lo que puedo decir, las definiciones mecanografiadas son correctas y esto no es un problema. Cuando el objeto de personalizaciones se serializa a JSON, las claves se convierten recursivamente a snake_case incluida la clave dynamicTemplateData ( fuente , tenga en cuenta que la lista de exclusiones son las claves que no se convertirán recursivamente, solo el propia clave de nivel superior).

Vuelva a abrir si me equivoco y me falta algo. Solo miro la última versión del código.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

wooyah picture wooyah  ·  4Comentarios

murphman300 picture murphman300  ·  4Comentarios

TobiahRex picture TobiahRex  ·  3Comentarios

mikemaccana picture mikemaccana  ·  4Comentarios

thidasapankaja picture thidasapankaja  ·  4Comentarios