Saya bermigrasi dari sendgrid 2.0.0
ke @sendgrid/mail 6.1.2
, substitusi tidak berfungsi lagi
SendgridService.prototype.sendTestEmail = function () {
var text = 'Hi %DISPLAY_NAME%\n\n'
const msg = {
to: '[email protected]',
subject: 'Test Email',
from: {email: '[email protected]', name: 'Test'},
text: text,
substitutions: {
"%DISPLAY_NAME%": 'Test'
}
}
return sendgrid.send(msg)
}
Halo @sydneyhenrard ,
Berikut adalah contoh lengkapnya.
Tampaknya Anda perlu menyetel substitutionWrappers
. Dalam kasus Anda, itu akan menjadi %
. Kemudian di objek substitutions
, Anda akan membiarkan karakter %
keluar.
Salam hangat,
Elmer
Apakah ada konvensi tentang variabel?
SendgridService.prototype.sendTestEmail = function () {
var text = 'Hi %DISPLAY_NAME% - %displayname%\n\n'
const msg = {
to: '[email protected]',
subject: 'Test Email',
from: {email: '[email protected]', name: 'Test'},
text: text,
substitutionWrappers: ['%', '%'],
substitutions: {
DISPLAY_NAME: 'Test',
displayname: 'Test'
}
}
return sendgrid.send(msg)
}
Email yang diterima:
Hi %DISPLAY_NAME% – Test
Halo @sydneyhenrard ,
Saya dapat mereproduksi masalah ini. Saya telah menambahkan ini ke backlog kami untuk diperbaiki. Sepertinya diberikan substitusi n, substitusi 0 tidak diatur dengan benar.
Salam hangat,
Elmer
@thinkingserious, apakah ini di pihak Anda atau ada masalah dengan Node SDK?
Ini masalah dengan SDK. Saya tidak begitu yakin persis apa masalahnya. Saya berencana untuk memeriksa payload untuk membantu memecahkan masalah.
Jika saya menggunakan variabel camelCase, saya tidak punya masalah dengan substitusi bahkan untuk substitusi 0
Terima kasih @sydneyhenrard ,
Itu akan membantu mencapai akar masalah lebih cepat :)
Saya rasa saya mungkin tahu apa masalahnya, biarkan saya menyelidikinya.
Digabung sebagai v6.1.3, terima kasih @adamreisnz!
@rumahsakitotak ,
Untuk membantu kami mengatasi masalah ini, kami ingin mengirimkan beberapa barang curian sebagai tanda terima kasih kami.
Terima kasih telah mendukung SendGrid!
Salam hangat,
Elmer
memiliki masalah yang sama pada 01/2018. mengubah variabel substitusi kami dari% companyname% menjadi% company_name% karena variabel kata tunggal tidak berfungsi. segera diperbaiki.
Halo @greglbyv ,
Versi SDK apa yang Anda gunakan? Terima kasih!
Salam hangat,
Elmer
Apakah substitusi seharusnya berfungsi saat menggunakan template desain yang dibangun? Saya bisa membuatnya berfungsi hanya ketika saya membuat template dengan tangan, yang dibuat dengan alat desain tidak pernah berfungsi.
@bayu_joo
Untuk membantu Anda, saya memerlukan detail lebih lanjut. 1) Template mana yang Anda maksud? 2) Bisakah Anda memberikan kode sampel? Baik template HTML dan kode Node.js. Terima kasih!
Selain itu, mungkin yang terbaik adalah membuka masalah terpisah. Terima kasih!
Salam hangat,
Elmer
@serius
Mohon abaikan komentar saya sebelumnya. Setelah balasan Anda, saya kembali melihatnya dengan mata segar dan itu adalah spasi ekstra dalam variabel interpolasi yang menyebabkan masalah yang tidak saya tangkap pertama kali.
Semua bekerja seperti yang diiklankan. Terima kasih.
@thinkingserious Saya telah mencoba segalanya, camelcase, underscore. Variabel masih tidak terisi, ketika saya melakukan pengujian melalui UI sendgrid dan meneruskan variabel, itu berfungsi dengan baik. Itu hanya tidak akan berfungsi melalui fungsi cloud firebase. Ini kode saya
Saya menggunakan "@ sendgrid / mail": "^ 6.3.1"
const msgbody = {
to: userData.email,
from: '[email protected]',
subject: 'Registration Complete',
templateId: 'd-dffc1e7c8a4a4ed5a4384eded1701f65',
substitutionWrappers: ['{{', '}}'],
substitutions: {
first_name: userData.firstName
}
}
Komentar yang paling membantu
@rumahsakitotak ,
Untuk membantu kami mengatasi masalah ini, kami ingin mengirimkan beberapa barang curian sebagai tanda terima kasih kami.
Terima kasih telah mendukung SendGrid!
Salam hangat,
Elmer