2016-03-19 4 views
0

トピックによれば、どのようにページに印刷しますか? これに関連する他の話題の多くはSimpleLoginを使用しています。SimpleLoginは廃止されましたので、あまり使用されないため、別のスレッドになります。AngularFire、どのように名前/電子メールをuidを通してページに表示するのですか?

登録機能(名前+電子メール+パスワード)とログイン機能+パスワード)、認証されたときにページに「Welcome {{user.name}}」と表示させたいとします。 私はそれが本当に基本的な仕事のように感じますが、私はそれを経験することはできません。 dashboard.htmlに転送されてリダイレクトされると(そこにルーティングに関するいくつかの問題がありますが、それは別の投稿、ヒントヒントです)、それはuidだけを表示します。

app.controller('dashController', ['currentAuth', '$scope', '$firebaseArray', '$firebaseAuth', '$rootScope', 'Auth', '$location', 
    function(currentAuth, $scope, $firebaseArray, $firebaseAuth, $rootScope, Auth, $location){ 
    var ref = new Firebase('https://url.firebaseio.com'); 
    $scope.auth = $firebaseAuth(ref); 
    $scope.user = $firebaseArray(ref); 


    var authData = $scope.auth.$getAuth(); 

    $scope.id = authData.uid; 
}]); 

とHTML::

それは次のようになります

<span>Welcome {{id}}</span> 

のは、中/ユーザー/ UID /名前+メール+パス保存されているすべてのUID。 ありがとう!

答えて

2

これはどんな意味がありません。

$scope.user = $firebaseArray(ref); 

データベースは、配列ではないので、配列は誰を助けていないようスコープにバインドしようとしています。

は、より多くの可能性が高いあなたはとのスコープに特定のユーザーのプロファイルデータをバインドしたい:

$scope.user = $firebaseObject(ref.child('users').child(authData.uid)); 

そして、あなたのビューで:

<span>Welcome {{user.name}}</span> 

私はあなたに最初からAngularFire programming guideに従うことをお勧めします終わり。そうすることで、たとえば$firebaseArray()$firebaseObject()の間の差異を明確にする必要があります。

+0

前のメッセージを編集しました。 とにかく、それは手伝った!最初はエラーが発生しましたが、それは定義される前にデータを取得しようとするほど簡単でした。 あなたがAngular + Firebaseをうまく使っているようですが、私が助けたいのであれば、私の他のスレッドで助けてもらいたいです。 これを正しい答えとしてマークしてください! :) – mtorn

関連する問題