2017-09-14 6 views
1

私はMeteorの角型プロジェクトで[email protected]パッケージを使用しています。メテオ角でページをリフレッシュすると、Meteor.user()メソッドは未定義を返します

Meteor.user()メソッドは現在のユーザーの詳細を返しますが、ページを更新するとundefinedが返されます。 このエラーを取り除く方法はありますか?どんな助けもありがとう。

Meteor.autorun(function() { 
    vm.loggedInUser = Meteor.user(); 
}); 

それは正常に動作していますが、私はページをリロードするときにそのデータを介してサーバからクライアントへの再送信されるまでページMeteor.user()は数サイクルのために定義されません更新すると、それはundefined

Meteor.autorun(function() { 
    vm.loggedInUser = Meteor.user(); 
    console.log("loggedInUser", vm.loggedInUser); // undefined 
}); 
+0

Tracker.autorun()です。あなたの問題を理解できるように、情報やコードを追加する必要があります。 – Styx

+0

私はより多くの情報で私の質問を改善しました。それはあなたを助けるかもしれない –

+0

あなたは 'Tracker.autorun'を意味しました、そうですか? – Styx

答えて

3

を返します。 websocket/ddp。最終的に定義され、適切なデータが得られます。 Meteorで構築されたもののようなシングルページアプリケーションは、通常、ページの更新を必要としませんが、ユーザーの手動で更新する場合に対処する必要があります。典型的な解決策は、サブスクリプションとユーザーデータが準備できるまでローディングスピナーを表示することです。

また、それはあなたの質問が広すぎるではないMeteor.autorun()

+0

あるルートから別のルートに切り替えるときにサーバーからデータを取得します。 –

+0

どのようにルートを切り替えるのですか?あなたはあなたのアプリのリンクをクリックしていますか?またはブラウザに新しいURLを入力しますか?前者の場合、 'Meteor.user()'は利用可能なままでなければなりませんが、後者の場合は実ページリフレッシュと同じです。 –

関連する問題