Esto envía el correo electrónico. Pero ninguna de las sustituciones reemplaza la plantilla. Simplemente seguí los dos ejemplos mencionados en la sección esto . Pero nada reemplaza las variables en la plantilla HTML por las sustituciones definidas.
Esta es mi plantilla
<html>
<head>
<title></title>
</head>
<body>
Hello {{name}},
<br /><br/>
I'm glad you are trying out the template feature!
<br /><br/>
<%body%>
<br /><br/>
I hope you are having a great day in {{city}} :)
<br /><br/>
</body>
</html>
con el encabezado <%subject%>
Y este es mi código.
sgMail.setSubstitutionWrappers('{{', '}}'); // Configure the substitution tag wrappers globally
const msg = {
to: '[email protected]',
from: '[email protected]',
subject: 'Hello world',
text: 'Hello plain world!',
html: '<p>Hello HTML world!</p>',
templateId: 'd-5d04c39e40054d118b4de3fba82a09ac',
substitutions: {
name: "Some One",
city: "Denver"
},
};
sgMail.send(msg);
Esto envía el correo electrónico, sin embargo, lo recibe así
Hello ,
I'm glad you are trying out the template feature!
<%body%>
I hope you are having a great day in :)
con el asunto de <%subject%>
.
Cualquier otra información que desee compartir que sea relevante para el problema que se informa. Especialmente, ¿por qué considera que esto es un error? ¿Qué esperas que suceda en su lugar?
Esperaba un correo electrónico como este (con el asunto Hello world
)
Hello Some One,
I'm glad you are trying out the template feature!
I hope you are having a great day in Denver :)
Probado en Template Engine con datos de prueba como
{
"name": "Some One",
"city": "Denver"
}
Esto se muestra correctamente en el motor de plantillas.
Tengo el mismo problema. Al crear correo a través de Mail.create
desde @sendmail/helpers
, obtengo mail.substitutions
= null
@ bbbneo333 verifique las últimas soluciones dadas en este número. Funcionó para mi
Si. Sustituir substitutions
con personalizations.0.dynamic_template_data
funcionó para mí. Gracias.
¡Gracias por ayudar a @ pankaja92 y gracias a @ bbbneo333 por hacer un seguimiento!
El problema es que si está utilizando las nuevas plantillas dinámicas, la llamada a la API es un poco diferente. En breve actualizaré la documentación de este SDK para reflejar esos cambios.
Comentario más útil
¡Gracias por ayudar a @ pankaja92 y gracias a @ bbbneo333 por hacer un seguimiento!
El problema es que si está utilizando las nuevas plantillas dinámicas, la llamada a la API es un poco diferente. En breve actualizaré la documentación de este SDK para reflejar esos cambios.