2016-05-20 4 views
3

У меня есть угловое приложение, которое использует библиотеку angularFire. В документации по пожарной части указано, что угловой огонь поддерживается https://firebase.google.com/support/guides/firebase-web#update_your_firebase_libraries_numberedFirebase angularfire in new firebase

Я обновил firebase и angularfire до последней версии.

ДО: // Это работает :-)

// *** DataService *** 

    var root = new Firebase(FIREBASE_URL);   

    var service = { 
     root: root, 
     items: root.child('items'), 
     tastings: root.child('tastings'), 
     users: root.child('users'), 
     votes: root.child('votes') 
    }; 

    return service; 

    // *** Controller *** 

    $scope.tastings = $firebaseArray(dataService.tastings); 

ПОСЛЕ: // Это не работает :-(

// *** app.js *** 

    .run(function (FIREBASE_CONFIG) { 
     firebase.initializeApp(FIREBASE_CONFIG); 
    }); 

    // *** DataService *** 

    var root = firebase.database().ref();   

    var service = { 
     root: root, 
     items: root.child('items'), 
     tastings: root.child('tastings'), 
     users: root.child('users'), 
     votes: root.child('votes') 
    }; 

    return service; 

    // *** Controller *** 

    $scope.tastings = $firebaseArray(dataService.tastings); 

Погрешность я получаю: «Должно пройти действительную Firebase ссылка на $ firebase (не строка или URL) "

Это похоже на ссылку firebase в консоли хром, когда я оцениваю dataService.tastings, хотя есть новые свойства, такие как база данных, которая была добавлена.

+0

Из чего я могу сказать, что нет более новой версии AngularFire, чем 1.2.0 ... – iamchriswick

+1

Запрос на слияние находится в работе: https://github.com/firebase/angularfire/pull/717 – iamchriswick

+0

Спасибо. Угадайте, что вам нечего делать, кроме как ждать обзора/слияния –

ответ

2

AngularFire теперь официально обновляется для поддержки Firebase 3.x.x :)

+0

спасибо за обновление :-) –

1

Да, AngularFire поддерживается с новым firebase 3 Google и выше.

Наряду с этим, вы можете получить подробную документацию об этом на: GitHub: https://github.com/firebase/angularfire

0

Я использую последнюю версию в одном из моих проектов, и она прекрасно работает, так что вы должны иметь что-то вроде этого:

/// Main configuration of Firebase 

    var config = { 
     apiKey: "AIzaSyDcPq_z9vh4CidkzFDyerRK0ZS7gs2Sj14", 
     authDomain: "citytimer-90920.firebaseapp.com", 
     databaseURL: "https://citytimer-90920.firebaseio.com", 
     storageBucket: "citytimer-90920.appspot.com", 
     messagingSenderId: "497040832817" 
    }; 
    firebase.initializeApp(config); 

Эта часть является чистой Javascript, поэтому вам не нужно включать ее в файл с угловым выражением.

Тогда это угловые файлы, которые я использую.

/// Database service 

    function firebaseDataService() { 
     var root = firebase.database().ref(); 

     var service = { 
      root: root, 
      requests: root.child('requests'), 
      places: root.child('places') 
     }; 

     return service; 
    } 

Как вы видите, моя служба выглядит как ваша.

/// Specific service to retrieve data 

function cityTimerService($firebaseArray, firebaseDataService, $firebaseObject, $rootScope, $q, $http) { 

     var service = { 
      getRequestsByUser: getRequestsByUser, 
     }; 

     return service; 

     function getRequestsByUser(uid) { 
      if (!requests) { 
       requests = $firebaseArray(firebaseDataService.requests.child(uid).child('userRequests')); 
      } 
      return requests; 
     } 
} 

В основном не больше нужно обеспечить FIREBASE_URL, потому что это часть объекта конфигурации. Для записи вы можете получить этот объект конфигурации с консоли Firebase.

Если вы хотите более подробно ознакомиться с кодом, который у меня есть в моем проекте, вы можете сделать это here.

Смежные вопросы