تعريف النوع لـ PersonalizationData
يحتوي على حقل يسمى dynamicTemplateData
. ومع ذلك ، تتوقع SendGrid API حقلاً يسمى dynamic_template_data
. نتيجة لذلك ، يتعين على مستخدمي TypeScript حاليًا إرسال الكائن MailData
لكتابة any
إذا كانوا يريدون استخدام طريقة sgMail.send()
بدون خطأ في المترجم:
sgMail.send({
personalizations: [
{
to: "[email protected]",
dynamic_template_data: {
field1: "value1",
field2: "value2"
}
}
],
from: 'noreply<strong i="12">@email</strong>',
templateId: "xxxxxxxx"
} as any);
لذلك ، يجب تغيير اسم الحقل في النوع PersonalizationData
ليتوافق مع ما تتوقعه واجهة برمجة التطبيقات ، أو يجب أن يحدث التعيين من dynamicTemplateData
=> dynamic_template_data
.
شكرا لكegges!
هذا صيد رائع وقد أضفته إلى تراكمنا للحصول على تحديث أو ربما سنحصل على علاقات عامة.
مع أحر تحياتي،
إلمر
egges مشكلة مماثلة لدي.
للمهتمين ، هذه هي الطريقة التي أصلحت بها المشكلة
https://github.com/sendgrid/sendgrid-nodejs/pull/716#issuecomment -472932577
نفس السؤال لـ thinkingserious ، لماذا لم يتم نشر هذا بعد؟ العلاقات العامة جاهزة وهي مشكلة كبيرة بالنسبة لنا المطبعين 😄
أفضل ما يمكنني قوله ، فإن التعريفات المطبوعة صحيحة وهذه ليست مشكلة. عندما يتم تسلسل كائن التخصيصات إلى JSON ، يتم تحويل المفاتيح بشكل متكرر إلى snake_case
بما في ذلك المفتاح dynamicTemplateData
( المصدر ، لاحظ أن قائمة الاستثناءات هي المفاتيح التي لا يجب تحويلها بشكل متكرر ، فقط مفتاح المستوى الأعلى نفسه).
الرجاء إعادة الفتح إذا كنت مخطئا وفقدت شيئا ما. مجرد إلقاء نظرة على أحدث نسخة من الكود.
التعليق الأكثر فائدة
egges مشكلة مماثلة لدي.
للمهتمين ، هذه هي الطريقة التي أصلحت بها المشكلة
https://github.com/sendgrid/sendgrid-nodejs/pull/716#issuecomment -472932577
نفس السؤال لـ thinkingserious ، لماذا لم يتم نشر هذا بعد؟ العلاقات العامة جاهزة وهي مشكلة كبيرة بالنسبة لنا المطبعين 😄