typescript - 错误:“ObjectBuilder”类型上不存在属性“onChange”
问题描述
我需要有关 Ionic 打字稿代码的帮助。
这使用 Google Cloud Vision API 来标记您上传到 Firebase 存储的照片。
我的问题:(返回以下错误)
错误 TS2339:“ObjectBuilder”类型上不存在属性“onChange”。npm 错误!代码 ELIFECYCLE npm 错误!函数@构建:'tsc'
我的 ts 文件:
import * as functions from 'firebase-functions';
import * as admin from 'firebase-admin';
admin.initializeApp(functions.config().firebase);
import * as vision from '@google-cloud/vision';
const visionClient = new vision.ImageAnnotatorClient();
//may need to delete, use default
const bucketName = 'outsidehax.appspot.com';
export const imageTagger = functions.storage
.bucket(bucketName)
.object()
.onChange( async event => {
const object = event.data;
const filePath = object.name;
const imageUri = 'gs://'+bucketName+'/'+filePath;
const docId = filePath.split('.jpg')[0];
const docRef = admin.firestore().collection('photos').doc(docId);
const results = await visionClient.labelDetection(imageUri);
const labels = results[0].labelAnnotations.map(obj => obj.description);
const sad = labels.includes('sad');
return docRef.set({ sad, labels })
});
此 index.ts 文件位于 AppName/functions/src/index.ts。
解决方案
您使用的是在 firebase-functions SDK 达到 1.0 时更改的旧 API。 请阅读此处的更改。不再有 onChange 事件。您应该改用其他事件之一,并确保了解它如何接收事件。
您应该注意其他更改,例如不带参数初始化 admin SDK:
admin.initializeApp()
推荐阅读
- r - 没有缺失值,但在 KNN R 期间将它们转换为 NA 值
- c# - VssResourceNotFoundException:API 资源位置
未在 {tfs url} 上注册 - c# - excel - VBA 导入和分割分隔的文本文件
- javascript - 为什么我的开发服务器处于无限重新加载循环中?
- if-statement - 如果拉过“错误”的单元格值
- json - 如何组合相关数据
- javascript - 反应 | Promise.then() 上的 Promise 未捕获类型错误
- node.js - 使用 NodeJS 发送基于 DynamoDb 流的 graphQL 突变
- php - 未定义变量:术语
- python - 为 tkinter 小部件创建一个类以调用默认属性