Typescriptλ₯Ό μ¬μ©νλ©΄ μ½ν
μΈ νλ μμ΄ μ΄λ©μΌμ μμ±ν μ μκΈ° λλ¬Έμ λ¬Έμ κ° λ°μν©λλ€. MailDataRequired
λ§μ΅λκΉ?
μ΄λ©μΌλ‘ μ½ν μΈ λ₯Ό λ³΄λΈ μ μ΄ μμ΅λλ€. κ΅μ²΄λ§ κ°λ₯ν©λλ€. μ½ν μΈ /ν νλ¦Ώμ μλ²μ μμ΅λλ€.
export type MailDataRequired = MailData & (
{ text: string } | { html: string } | { templateId: string } | { content: MailContent[] & { 0: MailContent } });
# paste exception/log here
BTW: 6.5.0μλ μ΄ μ΄μν { 0: MailContent }
μꡬ μ¬νμ΄ μλ κ² κ°μ§λ§ μ¬μ ν μ½ν
μΈ κ° νμν©λλ€.
μ΄κ²λ λ³΄κ³ . λ΄ ν¨ν€μ§λ₯Ό μ λ°μ΄νΈνκ³ μ΄μ μ΄κ²μ λν΄ νμ νμ§ λͺ»ν©λλ€.
λ΄κ° μ€μνμ§ μλ ν μ΄κ²μ https://github.com/sendgrid/sendgrid-nodejs/issues/1056 μ 볡μ λ³ΈμΌλ‘ κ°μ£Όν©λλ€.
text
, html
λλ content
. λμ€μ templateId
μ체λ νμ©λμ΄μΌ νλ€κ³ μ§μ νμ΅λλ€. μ΄κ²μ λΆν #1053μΌλ‘ μμ λμμ§λ§ μμ§ λ¦΄λ¦¬μ€λμ§ μμμ΅λλ€.@childish-sambino μ΄κ²μ 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
μλ κ·Έ μ€ νλκ° μμ΅λκΉ?
@childish-sambino μλ κ·Έλ₯ 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μμ λ³κ²½λ κ²½μ° send apiμ λν μ΅μ λ¬Έμλ μ΄λμ μμ΅λκΉ? μ¬κΈ°μμ λ§μ΄ μ°Ύμ μ μμ΅λλ€. @childish-sambino
κ°μ¬ ν΄μ.
μ, μ΄κ²μ 6.5.5 μμ 릴리μ€λμμ΅λλ€.
@childish-sambino @sendgrid/mail
ν¨ν€μ§μμλ MailDataRequired
μ λ΄λ³΄λ΄λ κ²μ λν΄ μ΄λ»κ² μκ°νμλκΉ?
@isaachinman λλ κ·Έκ²μ λν΄ μλ¬΄λ° λ¬Έμ κ° μμ΅λλ€. PRμ μ μΆνκ³ μΆλ€λ©΄ κ²ν ν μ μμ΅λλ€.
@childish-sambino μ£Όμλ₯Ό λλ¬λ³΄μλλ° 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
κ°μ₯ μ μ©ν λκΈ
BTW: 6.5.0μλ μ΄ μ΄μν
{ 0: MailContent }
μꡬ μ¬νμ΄ μλ κ² κ°μ§λ§ μ¬μ ν μ½ν μΈ κ° νμν©λλ€.