1

У меня есть webapp, который использует firebase 2.2.2. Теперь я пошел на firebase.com и должен был перейти к новой версии Firebase. Тогда я получаю указание поместить этот код в HTML-файл приложения:Угловой код в приложении не работает после обновления до firebase 3

<script src="https://www.gstatic.com/firebasejs/live/3.0/firebase.js"></script> 
 
<script> 
 
    // Initialize Firebase 
 
    var config = { 
 
    apiKey: "AIzaSakdsjfg-Lw.kadjfglkadjhgxhMDbq4", 
 
    authDomain: "myapp.firebaseapp.com", 
 
    databaseURL: "https://myapp.firebaseio.com", 
 
    storageBucket: "myapp.appspot.com", 
 
    }; 
 
    firebase.initializeApp(config); 
 
</script> 
 

, но если я делаю это, и удалить существующую ссылку:

<script src="https://cdn.firebase.com/js/client/2.2.2/firebase.js"></script>

тогда приложение больше не работает. В частности, угловые инструкции больше не работают. В следующем коде, например, отображается текст, но ссылка на пункт меню «Factory-Service» теперь не работает.

<div class="header" ng-controller="MenuCtrl as menuCtrl"> 
 
    <ul class="nav nav-pills pull-right"> 
 
    <li ng-if="menuCtrl.isLoggedIn()"><a ng-href="#/buildings">Buildings</a></li> 
 
    <li ng-if="menuCtrl.isLoggedIn()"><a ng-href="#/apartments">Apartments</a></li> 
 
    <li><a ng-href="#/factsvc">Factory-Service</a></li> 
 
    <li class="active"><a ng-href="#/">Home</a></li> 
 
    </ul> 
 
    <h3 class="text-muted">Hello AngularFire anonymous authentication</h3> 
 
</div>

Приложения работает с AngularJS и AngularFire-кодом:

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script> 
 
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular-route.min.js"></script> 
 
    <script src="https://cdn.firebase.com/libs/angularfire/1.0.0/angularfire.min.js"></script>

Если я установить последнюю версию углового огня (НАЯ установку angularfire - -latest), то зависимость от версии 2.4.2 Firebase. , а не версии 3.x. (когда я запускаю npm install firebase --latest, однако версия 3.0.2 установлена).

Как это решить? Должен ли я тогда не включать код Firebase говорит мне включать или я могу сделать angularfire зависимости от firebase 3.x вручную? Или оставьте ссылку на v. 2.2.2. наряду с новой ссылкой?

+0

Очевидно, что, поскольку API изменился в разрыве, вы не можете использовать одну и ту же библиотеку без обновления. Вы можете перейти к обновлению до AngularFire в [этот PR] (https://github.com/firebase/angularfire/pull/717) – Kato

ответ

1

Поскольку API изменился в разрыве между 2.x и 3.0, вы не сможете использовать AngularFire, пока авторы (я и другие) не обновят библиотеку. Это происходит в this changelist, который почти завершен.

+0

Привет, Като, можете ли вы, пожалуйста, подтвердить, что угловой огонь теперь поддерживает firebase v3? Также вы можете взглянуть на это http://stackoverflow.com/questions/37886396/simple-firebase-v3-data-retrieval-with-angularfire-v2 – stt106