Sendgrid-nodejs: PersonalizationDataのタイプ定義が間違っています

作成日 2019年03月07日  ·  3コメント  ·  ソース: sendgrid/sendgrid-nodejs

以下のための型定義PersonalizationData呼ばれるフィールドが含まれdynamicTemplateData 。 ただし、SendGrid APIは、 dynamic_template_dataというフィールドを想定しています。 その結果、TypeScriptユーザーは現在、コンパイラエラーなしでsgMail.send()メソッドを使用する場合、 MailDataオブジェクトをキャストしてanyと入力する必要があります。

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タイプのフィールド名は、APIが期待するものと一致するように変更するか、 dynamicTemplateData => dynamic_template_dataからマッピングを行う必要があります。

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

最も参考になるコメント

@egges私が持っていた同様の問題。

興味のある人のために、これは私が問題を修正した方法です
https://github.com/sendgrid/sendgrid-nodejs/pull/716#issuecomment -472932577

@thinkingseriousへの同じ質問、なぜこれがまだ展開されていないのですか? PRは準備ができており、タイプスクリプターにとって大きな問題です😄

全てのコメント3件

ありがとう@egges!

これは素晴らしいキャッチであり、更新のためにこれをバックログに追加しました。そうしないと、PRを取得する可能性があります。

敬具、

エルマー

@egges私が持っていた同様の問題。

興味のある人のために、これは私が問題を修正した方法です
https://github.com/sendgrid/sendgrid-nodejs/pull/716#issuecomment -472932577

@thinkingseriousへの同じ質問、なぜこれがまだ展開されていないのですか? PRは準備ができており、タイプスクリプターにとって大きな問題です😄

私が知る限り、タイプスクリプトの定義は正しく、これは問題ではありません。 パーソナライズオブジェクトがJSONにシリアル化されると、キーはdynamicTemplateDataキーを含むsnake_case再帰的に変換されます(ソース、除外リストは再帰的に変換されないキーであり、トップレベルキー自体)。

私が間違っていて何かが足りない場合は、もう一度開いてください。 コードの最新バージョンを見るだけです。

このページは役に立ちましたか?
0 / 5 - 0 評価