私はいくつかの異なるモジュール(ユーザープロファイル、投稿を好き、コメントする)内のログインユーザーの情報にアクセスする必要があるAngularjsアプリケーションを構築しています。 Angularjsアプリのさまざまな部分で特定のデータを共有する必要がある場合は、service
またはfactory
を使用することが望ましいと私は認識しています。しかし、$ rootScopeはどうですか?私はアプリの任意の部分内でのユーザの情報が必要な場合は
.run(function($rootScope, userService) {
userService.getLoggedInUser()
.then(function(user){
$rootScope.loggedInUser = user; // Contains username, joined date, photo URL, etc.
})
})
、私は単にルート
<div >Username: {{ $root.loggedInUser.username }} </div>
...
alert($rootScope.username());
からそれを取り出すことができ、これは任意の負の方法でアプリケーションを公開していますか?私はパスワードや電子メールのような機密情報は紹介していませんが、明らかに何かを見落としているかもしれません。
ご了承ください。
なぜローカルストレージですか? –
@JeremyJacksonこの時点で特別な理由はありません。なぜグローバルストレージはありませんか? –
機密データを保存しないので、問題はありません。また、@ JeremyJackson氏によると、ローカルストレージを使ってそのようなデータを保存することができます。 – KKK