MailDataは現在dynamic_template_data
プロパティを取得できますが、そのインターフェイスにはそのフィールドがありません。
同様に、PersonalizationDataにはdynamicTemplateData
というフィールドがあり、私が知る限り、動的テンプレートには何もしません。 ただし、 dynamic_template_data
を使用すると、テンプレートのハンドルバーが適切に置き換えられます(ただし、同じtslintエラーが発生します)。
これはおそらくこのコミットに関連しており、 dynamicTemplateData
は代わりにdynamic_template_data
はずです。
https://github.com/sendgrid/sendgrid-nodejs/pull/716/files
dynamic_template_data
というフィールドでMailData型の変数を宣言しますconst mailOptions: MailData = {
...
dynamic_template_data: {
hello: "world
}
}
期待される動作:
tslintはエラーを表示しません
実際の動作
tslintはObject literal may only specify known properties
エラーを発生させます
"@sendgrid/helpers": "^6.3.0",
"@sendgrid/mail": "^6.3.1",
Node.js Version: v10.15.3
それでもdynamic_template_dataはMailDataに存在しません:
/** <strong i="6">@type</strong> {import('@sendgrid/helpers/classes/mail').MailData} */
const emailContent = {
to: toEmail,
from: this.SG_USER,
templateId,
asm: {
groupId,
},
dynamic_template_data: {
...body,
testingHead: debug.head,
testingBody: debug.body,
},
mail_settings: {
sandbox_mode: {
enable: sendgridSandboxMode,
},
},
};
Type '{ to: string; from: any; templateId: string; asm: { groupId: number; }; dynamic_template_data: any; mail_settings: { sandbox_mode: { enable: any; }; }; }' is not assignable to type 'MailData'.
Object literal may only specify known properties, but 'dynamic_template_data' does not exist in type 'MailData'. Did you mean to write 'dynamicTemplateData'?ts(2322)
この問題も発生しています。 @okhomenko修正を見つけることができましたか?
2021年同じ問題がまだ起こっています
最も参考になるコメント
この問題も発生しています。 @okhomenko修正を見つけることができましたか?