2014-04-10 57 views
0

因此,在最近幾天習慣了AngularFire之後,我偶然發現了angularFire()構造函數。關於AngularFire()控制器的迷惑

我打電話是因爲這在此刻:

angularFire(new Firebase(FBURL + '/users' + $scope.auth.id), $scope, 'user'); 

如果我理解正確的話,第一個參數是指向登錄用戶當前的URL(假設我的登錄工作正常關閉過程中,它所做的)。

第二個參數是我想將它綁定到範圍的事實。

第三個參數是該範圍的字符串化的名稱,是否正確?

我得到了angularFire構造從下面這個教程:http://www.thinkster.io/angularjs/eHPCs7s87O/angularjs-tutorial-learn-to-rapidly-build-real-time-web-apps-with-firebase#item-526c8aae0717fcb66f00020f

$scope.$on('angularFireAuth:login', function() { 
     angularFire(new Firebase(FBURL+'/users/'+$scope.auth.id), $scope, 'user'); 
     }); 

現在我這樣做:

console.log($scope.auth.id); 
//prints 16, at this location there is a user 
console.log($scope.user) 
//prints undefined 

我期待的是$ scope.user握住我的用戶對象,因爲在鏈接確實是我的用戶對象。嘗試傳入「{}」作爲第四個參數以顯式詢問對象後,它仍然失敗。

回答

1

我不熟悉你使用的構造函數。您應該使用$ firebase函數來設置綁定。

$scope.user = $firebase(new Firebase(FBURL + '/users/' + $scope.auth.id)) 

看看@https://www.firebase.com/quickstart/angularjs.html一個快速穿行。

+0

不是與$ firebase相同的東西嗎? –

+0

AngularFire是庫的名稱,但它並不直接暴露'AngularFire'對象。它將它包裝在Angular模塊中,並將其作爲$ firebase公開。所以我不確定你從哪裏得到這些參數的angularFire構造函數 - 除非它是你創建或在別處找到的東西? –

+0

我編輯我的帖子,我發現這裏 –