【发布时间】:2020-05-12 19:27:34
【问题描述】:
我正在尝试向 Firebase 部署一个简单的功能。
当在集合 todos 中创建一个新的 write 时,我希望将通知发送给带有令牌的订阅者:
evGBnI_klVQYSBIPMqJbx8:APA91bEV5xOEbPwF4vBJ7mHrOskCTpTRJx0cQrZ_uxa-QH8HLomXdSYixwRIvcA2AuBRh4B_2DDaY8hvj-TsFJG_Hb6LJt9sgbPrWkI-eo0Xtx2ZKttbIuja4NqajofmjgnubraIOb4_
为了实现这一点,我遵循了一个教程,但是在部署时,它给出了错误
下面是我function的代码:
import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';
admin.initializeApp(functions.config().firebase);
exports.newSubscriberNotification = functions.firestore
.document('todos')
.onCreate(async event=>{
const data = event.data();
const workdesc = data.workdesc;
const subscriber = "evGBnI_klVQYSBIPMqJbx8:APA91bEV5xOEbPwF4vBJ7mHrOskCTpTRJx0cQrZ_uxa-QH8HLomXdSYixwRIvcA2AuBRh4B_2DDaY8hvj-TsFJG_Hb6LJt9sgbPrWkI-eo0Xtx2ZKttbIuja4NqajofmjgnubraIOb4_";
// notification content
const payload = {
notification: {
title: 'new write in collection todos',
body: workdesc,
//body: 'body',
icon: 'https://img.icons8.com/material/4ac144/256/user-male.png'
}
}
// send notification
return admin.messaging().sendToDevice(subscriber, payload)
});
错误:
src/index.ts:11:11 - error TS6133: 'workdesc' is declared but its value is never read.
11 const workdesc = data.workdesc;
~~~~~~~~
src/index.ts:11:22 - error TS2532: Object is possibly 'undefined'.
11 const workdesc = data.workdesc;
Found 2 errors.
npm ERR! code ELIFECYCLE
npm ERR! errno 2
npm ERR! functions@ build: `tsc`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the functions@ build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
编辑 1
按照指导进行2次更改后,当我部署该功能时,它仍然给HTTP Error: 400,附上截图
【问题讨论】:
标签: typescript firebase google-cloud-firestore google-cloud-functions