exports.archiveChat = functions.firestore
.document('chats/{chatId}')
.onUpdate( snap => {
const data= snap.after.data();
const maxLen = 100;
const msgLen = data.messages.length;
const charLen = JSON.stringify(data).length;
const batch = db.batch()
if( charLen >= 10000 || msgLen >= maxLen){
const deleteCount = msgLen - maxLen <= 0 ? 1 : msgLen - maxLen
data.messages.splice(0,deleteCount);
const ref = db.collection("chats").doc(snap.after.id)
batch.set( ref, data ,{ merge : true });
return batch.commit();
} else{
return null;
}
})
не использовать до объявления объявлено устаревшим.Начиная с TypeScript 2.9.Пожалуйста, используйте вместо этого встроенные проверки компилятора.Выполнение команды: npm --prefix «$ RESOURCE_DIR» запустить сборку
functions @ build / Users / thedkn / Desktop / cmeraApp1 / functions tsc
src / index.ts: 39: 45 - ошибка TS2532: Возможно, объект не определен.
39 const msgLen = data.messages.length;~~~~
src / index.ts: 46: 31 - ошибка TS2532: Возможно, объект не определен.
46 data.messages.splice (0, deleteCount);~~~~
src / index.ts: 50: 47 - ошибка TS2345: Аргумент типа 'DocumentData |undefined 'не может быть назначен параметру типа' DocumentData '.Тип «undefined» нельзя назначить типу «DocumentData».
50 batch.set (ref, data, {merge: true});~~~~
Найдено 3 ошибки.
npm ERR!код ELIFECYCLE npm ERR!errno 2 npm ERR!functions @ build: tsc
npm ERR!Статус выхода 2 npm ERR!нпм ERR!Сбой в скрипте functions @ build.нпм ERR!Это, вероятно, не проблема с npm.Скорее всего, выше выводится логирование.
npm ERR!Полный журнал этого прогона можно найти в: npm ERR!/Users/thedkn/.npm/_logs/2019-06-05T00_10_17_788Z-debug.log
Ошибка: ошибка предустановки функций: команда завершена с ненулевым кодом выхода2 Dhirajs-Air: функции thedkn $