По какой-то причине мой метод listImage()
возвращает нуль, я не знаю, что я мог делать неправильно. по какой-то причине мой метод listImage()
возвращает null
.Метод возвращает нуль
import {
Injectable,
}
from '@angular/core'
declare
var firebase;
@
Injectable()
export class StorageService {
img:any;
listImage() {
var getImages = firebase.database().ref('flats').once('value');
getImages.then(snapshot => {
var imgName = snapshot.val();
var names;
snapshot.forEach(imgName => {
names = imgName.val();
let i = names.image;
//console.log(i);
let key = imgName.key
firebase.storage().ref(i + '.jpg').getDownloadURL().then(url => {
this.img = url;
});
})
})
return this.img;
}
}
это может быть forEach()
ограничивая его
constructor(public navCtrl: NavController, service: StorageService) {
this.service = service;
var img = this.service.listImage();
console.log(img); //this returns null what could be the issue?
}
Это асинхронный метод. Существует много вопросов, связанных с этой проблемой. Я делаю это не угловой2 вопрос – yurzui
О, я вижу, что нет углового метода или библиотеки, которые могут обходить это. –