Цель:
Цель состоит в том, чтобы вернуть изображения, хранящиеся в сегменте хранилища Firebase, используя listAll()
, а затем получить их URL-адреса, используя getDownloadURL()
и pu sh каждый URL-адрес в массив, который использоваться для отображения изображений в галерее.
Проблема:
Мне удалось вернуть URL-адреса, но я получаю эту ошибку: TypeError: "_this is undefined"
при попытке pu sh их в пустой массив.
Что я сделал:
Я пробовал несколько подходов за последние 3 дня, и это было лучшее, что я мог придумать:
Объявление пустого массива:
export class imgService {
public images = []
Метод:
//creating a reference
var itemsRef = firebase.storage().ref().child('images/');
// listing the images
itemsRef.listAll().then(function (result) {
result.items.forEach(function (itemRef) {
// getting the URLs of the images
itemRef.getDownloadURL().then(downloadURL => {
console.log('URL:' + downloadURL);
// pushing URLs to the empty images array
this.images.push(downloadURL); //PROBLEM OCCURS HERE
}).catch(function (error) {
//Handling error here
});
});
}).catch(function (error) {
//Handling error here
});
Я новичок во всем этом, просто пытаюсь изучить веб-технологии, поэтому, пожалуйста, go полегче со мной. Спасибо