我在增加
substitutions
通过FireBase Cloud功能从sendgrid发送的电子邮件数据。
这是我的
function
exports.firestoreEmail = functions.firestore
.document('users/{id}')
.onCreate(snap => {
const user = snap.data();
const msg = {
to: user.email,
from: 'example@example.com',
subject: `${user.firstName}, please Verify Your Email Address`,
templateId: 'templateID',
substitutionWrappers: ['{{', '}}'],
substitutions: {
firstName: user.firstName,
email: user.email,
id: user.id
}
};
return sgMail
.send(msg)
.then(() => console.log('email sent!'))
.catch(err => console.log(err));
});
以及
事务性
模板
templateId
是
<html>
<head></head>
<body>{{firstName}} - {{email}} - {{id}}</body>
</html>
这会将电子邮件返回到
user.email
如预期,但空白处
替代
数据应该是。
遵循文档和用例
here
我也试过增加
sgMail.setSubstitutionWrappers('{{', '}}');
到全球
setSubstitutionWrappers
. 还是不行。
我也有
console.log(user)
返回要传递给
替代
在控制台中。
我错过了什么?数据可用,电子邮件格式正确,功能与sendgrid案例完全一致。