Как показывают комментарии, проблема в том, что у вас нет кода, который на самом деле читает ratingsSum
и ratingsAmountCounter
. Сообщение об ошибке говорит вам, что ESLint сработал по правилу " no-unused-vars ", чтобы сообщить вам об этом. Переменные, которые никогда не читаются, вероятно, являются ошибкой или, по крайней мере, ненужным кодом.
Что вам, вероятно, следует сделать, это вернуть обещание вызывающей стороне, чтобы они могли получить значения в любое время, когда асинхронный get()
завершено и значения рассчитаны. Например:
function updateRating() {
let firestoreQuery = firebase
.firestore()
.collection('ratings')
.where('qrCodeId', '==', this.qrCode.id);
let ratingsSum = 0;
let ratingsAmountCounter = 0;
return firestoreQuery.get().then(querySnapshot => {
querySnapshot.forEach(doc => {
ratingsSum += doc.rating;
ratingsAmountCounter++;
});
return { ratingsSum, ratingsAmountCounter }
});
}
Теперь вызывающая сторона этой функции получает обещание, которое разрешается, когда значения известны, и их можно извлечь из разрешенного объекта:
updateRating().then(result => {
const { ratingsSum, ratingsAmountCounter } = result;
// Now you can use ratingsSum and ratingsAmountCounter...
})