Я использую angular и firebase вместе, и у меня есть массив продуктов, который я храню в своей корневой области, хотя для загрузки элементов требуется время.
Моя проблема заключается в том, что когда я перехожу на эту страницу, например, напрямую: http://localhost/product/greyish-sports-shoes
Если я перехожу на домашнюю страницу, продукты загружаются через 2 секунды ... и только тогда, когда я нажимаю на ссылку продукта, я попадаю на нее, и это будет работать, потому что продукты уже были загружены.
Он обращается к ShoeService, содержащему массив товаров, но товары все еще не загружены, поэтому он не может найти товар по его слагу.
Это код, который я использую в своем методе запуска.
var ref = firebase.database().ref().child('products');
$rootScope.shopProds = $firebaseArray(ref);
Моя обувная фабрика:
function shoeFactory($rootScope) {
this.service = {};
this.service.store = new Store($rootScope.shopProds);
this.service.cart = new Cart();
return this.service;
}