Javascript Firebase云函数:如何更新多个函数使用的值
我有多个使用单个值的云函数,基本上是这样的: index.js 问题是,我想更改emailFooter返回的页脚内容,但为了做到这一点,根据我的研究,我首先必须在代码中更改页脚内容,然后部署使用emailFooter sendEmailSuccess和sendEmailFailure的每个云函数,以便页脚在每种类型的电子邮件上看起来都相同 当然,我可以使用firebase deploy-only函数同时部署所有函数,但我们过去是多个开发人员,我们中的一些人更新了函数,以至于我们不知道index.js中的哪些函数与GCP中的相同,大约有20个函数,我必须检查每个函数,这样我就不会部署旧版本 有没有办法更新这个值,或者至少知道哪些函数是最新的Javascript Firebase云函数:如何更新多个函数使用的值,javascript,firebase,google-cloud-platform,google-cloud-functions,Javascript,Firebase,Google Cloud Platform,Google Cloud Functions,我有多个使用单个值的云函数,基本上是这样的: index.js 问题是,我想更改emailFooter返回的页脚内容,但为了做到这一点,根据我的研究,我首先必须在代码中更改页脚内容,然后部署使用emailFooter sendEmailSuccess和sendEmailFailure的每个云函数,以便页脚在每种类型的电子邮件上看起来都相同 当然,我可以使用firebase deploy-only函数同时部署所有函数,但我们过去是多个开发人员,我们中的一些人更新了函数,以至于我们不知道index.
谢谢。如果单个值只能由代码提供,那么如果不重新部署每个函数,就无法更新该值。函数实例之间不共享代码-每个实例都有自己的副本
如果您希望在函数之间共享一个值,并且该值可能会随时间而变化,则需要将该值放在其他位置,例如数据库。然后,每个函数都可以查询该值的其他来源,即使在该值发生更改后也是如此。如果单个值只能由代码提供,则在不重新部署每个函数的情况下,无法更新该值。函数实例之间不共享代码-每个实例都有自己的副本 如果您希望在函数之间共享一个值,并且该值可能会随时间而变化,则需要将该值放在其他位置,例如数据库。然后,每个函数都可以查询该值的其他源,即使在该值发生更改之后也是如此
function emailFooter() {
return `<div>email footer</div>`;
}
exports.sendEmailSuccess = functions.https.onCall(() => {
const emailContent = 'success content' + emailFooter();
sendEmail(emailContent) // fake email sender
});
exports.sendEmailFailure = functions.https.onCall(() => {
const emailContent = 'failure content' + emailFooter();
sendEmail(emailContent) // fake email sender
});