هذا يرسل البريد الإلكتروني. لكن أيا من البدائل لا تحل محل النموذج. لقد اتبعت للتو كلا المثالين المذكورين في قسم نماذج المعاملات وجربت ذلك أيضًا. لكن لا شيء يحل محل المتغيرات في قالب HTML بالبدائل المحددة.
هذا هو قالبي
<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>
بالعنوان <%subject%>
وهذا هو الكود الخاص بي.
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);
هذا يرسل البريد الإلكتروني ، ومع ذلك فإنه يتلقى مثل هذا
Hello ,
I'm glad you are trying out the template feature!
<%body%>
I hope you are having a great day in :)
بموضوع <%subject%>
.
أي معلومات أخرى تريد مشاركتها وذات صلة بالمشكلة التي يتم الإبلاغ عنها. على وجه الخصوص ، لماذا تعتبر هذا خطأ؟ ماذا تتوقع ان يحدث بدلا من ذلك؟
كنت أتوقع بريدًا إلكترونيًا مثل هذا (مع الموضوع كـ 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 :)
تم الاختبار في Template Engine مع بيانات الاختبار مثل
{
"name": "Some One",
"city": "Denver"
}
يظهر هذا بشكل صحيح في محرك القالب.
لدي نفس المشكلة. عند إنشاء بريد عبر Mail.create
من @sendmail/helpers
، أحصل على mail.substitutions
= null
@ bbbneo333 تحقق من الحلول الأخيرة الواردة في هذه المشكلة. عملت معي
نعم. لقد نجح استبدال substitutions
بـ personalizations.0.dynamic_template_data
بالنسبة لي. شكر.
شكرًا على المساعدة @ pankaja92 وشكرًا لـ @ bbbneo333 على المتابعة!
المشكلة هي أنه إذا كنت تستخدم القوالب الديناميكية الجديدة ، فإن استدعاء API مختلف قليلاً. سأقوم بتحديث وثائق SDK هذه قريبًا لتعكس تلك التغييرات.
التعليق الأكثر فائدة
شكرًا على المساعدة @ pankaja92 وشكرًا لـ @ bbbneo333 على المتابعة!
المشكلة هي أنه إذا كنت تستخدم القوالب الديناميكية الجديدة ، فإن استدعاء API مختلف قليلاً. سأقوم بتحديث وثائق SDK هذه قريبًا لتعكس تلك التغييرات.