Sendgrid-nodejs: MailDataRequired рдХреЛ MailContent рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 7 рдорд╛рд░реНрдЪ 2020  ┬╖  19рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: sendgrid/sendgrid-nodejs

рд╕рд╛рд░рд╛рдВрд╢ рдЬрд╛рд░реА рдХрд░реЛ

рдореИрдВ рдЯрд╛рдЗрдкрдкреНрд░рддрд┐ рдХреЗ рд╕рд╛рде рдПрдХ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдореБрдЭреЗ рд╕рд╛рдордЧреНрд░реА рдХреНрд╖реЗрддреНрд░ рдХреЗ рдмрд┐рдирд╛ рдИрдореЗрд▓ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рдХреНрдпрд╛ MailDataRequired рд╕рд╣реА рд╣реИ?

рдореИрдВ рдХрднреА рднреА рдЕрдкрдиреЗ рдИрдореЗрд▓ рд╕реЗ рд╕рд╛рдордЧреНрд░реА рдирд╣реАрдВ рднреЗрдЬрддрд╛ рдерд╛ред рдХреЗрд╡рд▓ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрдиред рд╕рд╛рдордЧреНрд░реА / рдЯреЗрдореНрдкрд▓реЗрдЯ рдЖрдкрдХреЗ рд╕рд░реНрд╡рд░ рдкрд░ рд░рд╣рддреЗ рд╣реИрдВред

рд╕рд╛рдВрдХреЗрддрд┐рдХ рдЯреБрдХрдбрд╝рд╛

export type MailDataRequired = MailData & (
    { text: string } | { html: string } | { templateId: string } | { content: MailContent[] & { 0: MailContent } });

рдЕрдкрд╡рд╛рдж/рд▓реЙрдЧ

# paste exception/log here

рддрдХрдиреАрдХреА рдЬрд╛рдирдХрд╛рд░реА:

  • Sendgrid-nodejs рд╕рдВрд╕реНрдХрд░рдг: @sendgrid/client@^6.5.3

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

BTW: 6.5.0 рдореЗрдВ рдпрд╣ рдЕрдЬреАрдм { 0: MailContent } рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рд╕рд╛рдордЧреНрд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╕рднреА 19 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

BTW: 6.5.0 рдореЗрдВ рдпрд╣ рдЕрдЬреАрдм { 0: MailContent } рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА рд╕рд╛рдордЧреНрд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпрд╣ рднреА рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред рдореЗрд░реЗ рдкреИрдХреЗрдЬ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдФрд░ рдЕрдм рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ

рдЗрд╕реЗ https://github.com/sendgrid/sendgrid-nodejs/issues/1056 рдХрд╛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ

6.5.4 рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдкреЗрд╢ рдХрд┐рдП рдЧрдП 1041 рдореЗрдВ text , html , рдпрд╛ content ред рдмрд╛рдж рдореЗрдВ рдпрд╣ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рдХрд┐ templateId рдХреЛ рднреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рднрд╛рдЧ #1053 рдХреЗ рд░реВрдк рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

@ рдмрдЪрдХрд╛рдирд╛-рд╕рд╛рдореНрдмрд┐рдиреЛ рдпрд╣ рдЕрднреА рднреА 6.5.4 рдкрд░ рдПрдХ рдореБрджреНрджрд╛ рд╣реИ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

type MailDataRequired = MailData & (
  { text: string } | { html: string } | { content: MailContent[] & { 0: MailContent } });

рд╡рд╣ content рдПрдХ рдЖрд╡рд╢реНрдпрдХ рд╕рдВрдкрддреНрддрд┐ рдмрдирд╛ рд░рд╣рд╛ рд╣реИ, рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдХреЛрдИ рдХрд╛рд░рдг рд╣реИ рдЬрдм MailData рдЗрд╕реЗ рд╕рд╢рд░реНрдд рд╕рдВрдкрддреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддрд╛ рд╣реИ? рдореИрдВрдиреЗ рдЗрд╕реЗ рдкрд╛рд╕ рдХрд░рдХреЗ рддрдп рдХрд┐рдпрд╛:

{...mailData, content: undefined}

6.5.4 рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдкреЗрд╢ рдХрд┐рдП рдЧрдП 1041 рдореЗрдВ text , html , рдпрд╛ content ред

@rodrigomf24 рдХреНрдпрд╛ mailData рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдирд╣реАрдВ рд╣реИ?

@ рдмрдЪрдХрд╛рдирд╛-рд╕рд╛рдореНрдмрд┐рдиреЛ рдирд╣реАрдВ рд╕рд┐рд░реНрдл рдПрдХ templateId рдФрд░ dynamicTemplateData

@rodrigomf24

рдмрд╛рдж рдореЗрдВ рдпрд╣ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рдХрд┐ templateId рдХреЛ рднреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рднрд╛рдЧ #1053 рдХреЗ рд░реВрдк рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рд▓реЗрдХрд┐рди рдЕрднреА рддрдХ рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдХреНрдпрд╛ рдпрд╣ рдлрд┐рдХреНрд╕ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ?

рдореБрдЭреЗ рдЕрднреА рд╕рдВрд╕реНрдХрд░рдг 7.0.0 рдорд┐рд▓рд╛ рд╣реИ рдФрд░ рдореБрдЭреЗ рдЕрднреА рднреА рдпрд╣ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗ рд░рд╣реА рд╣реИ

TSError: тип Unable to compile TypeScript: src/email-templates/verification-email-template.ts(15,25): error TS2769: No overload matches this call. Overload 1 of 2, '(data: MailDataRequired, isMultiple?: boolean | undefined, cb?: ((err: Error | ResponseError, result: [ClientResponse, {}]) => void) | undefined): Promise<...>', gave the following error.

рдпрджрд┐ рдпрд╣ 7.0.0 рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рднреЗрдЬреЗрдВ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдирд╡реАрдирддрдо рджрд╕реНрддрд╛рд╡реЗрдЬ рдХрд╣рд╛рдВ рд╣реИ? рдпрд╣рд╛рдВ рдмрд╣реБрдд рдХреБрдЫ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред @рдмрдЪрдХрд╛рдирд╛-рд╕рд╛рдореНрдмрд┐рдиреЛ

рдзрдиреНрдпрд╡рд╛рджред

рд╣рд╛рдБ, рдпрд╣ 6.5.5 . рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛

@ рдмрдЪрдХрд╛рдирд╛-рд╕рд╛рдореНрдмрд┐рдиреЛ @sendgrid/mail рдкреИрдХреЗрдЬ рд╕реЗ рднреА MailDataRequired рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрдк рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВ?

@isaachinman рдореБрдЭреЗ рдЗрд╕рд╕реЗ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рдЖрдк рдкреАрдЖрд░ рдЬрдорд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рдЗрд╕рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

@ рдмрдЪрдХрд╛рдирд╛-рд╕рд╛рдореНрдмрд┐рдиреЛ рдореИрдВрдиреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реА, рдФрд░ export = рдХреЗ рдореЙрдбреНрдпреВрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдЕрдкрд░рд┐рдЪрд┐рдд рд╣реВрдБ рдпрд╣рд╛рдБ рд▓рд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛

рдЕрдЧрд░ рдЖрдк рдореБрдЭреЗ рд╕рд╣реА рджрд┐рд╢рд╛ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

рд╕реЛрдЪреЗрдВ рдХрд┐ рдЗрд╕ рд▓рд╛рдЗрди рдХреЛ рдЕрднреА рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: https://github.com/sendgrid/sendgrid-nodejs/blob/master/packages/mail/src/mail.d.ts#L37

рдЗрд╕ рддрд░рд╣ рд╢рд╛рдпрдж:

declare const mail: MailService & { MailService: typeof MailService, MailDataRequired: typeof MailDataRequired };

рдирд╣реАрдВ, рдпрд╣ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ MailDataRequired рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдкреНрд░рдХрд╛рд░ рд╣реИред declare const рдХрд╛ рдЙрдкрдпреЛрдЧ рдЪреАрдЬреЛрдВ рдХреЛ рдереЛрдбрд╝рд╛ рдЬрдЯрд┐рд▓ рдмрдирд╛рддрд╛ рд╣реИред

рддреЛ рдмрд╕ , MailDataRequired: MailDataRequired }; ?

рдирд╣реАрдВ, рдореИрдВ рдЬреЛ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд┐рд░реНрдпрд╛рдд рдореЗрдВ рд╕рдЪрдореБрдЪ рдПрдХ MailDataRequired рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреБрдбрд╝ рдЬрд╛рддреА рд╣реИред рдпрджрд┐ рдЖрдкрдиреЗ рдЕрдкрдирд╛ рдирд╡реАрдирддрдо рд╕реБрдЭрд╛рд╡ рдЖрдЬрд╝рдорд╛рдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ refers to a value, but is being used as a type рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧреАред

рдореИрдВрдиреЗ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдореЙрдбреНрдпреВрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рдкреНрд░рдмрдВрдзрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдкреИрдХреЗрдЬ рдХреЛ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрдкрдХреЛ рдХреЛрдИ рд╕реБрдЭрд╛рд╡ рдирд╣реАрдВ рджреЗ рд╕рдХрддрд╛ред рдЖрдкрдХреЛ рдирд╛рдорд┐рдд рдирд┐рд░реНрдпрд╛рдд рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣рд┐рдПред

рдЖрдо рддреМрд░ рдкрд░ рдореИрдВ рдРрд╕рд╛ рдХреБрдЫ рджреЗрдЦрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реВрдВ:

export default mail
export { MailDataRequired }

@isaachinman рд╕реЛрдЪреЛ рдпрд╣ (рд╣реИрдХ) рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП: https://github.com/sendgrid/sendgrid-nodejs/pull/1102

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

thinkingserious picture thinkingserious  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

thidasapankaja picture thidasapankaja  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

danielflippance picture danielflippance  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mikemaccana picture mikemaccana  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

metalshan picture metalshan  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ