2016-06-22 6 views
0

ユーザーがログインしているかどうかに基づいて2つの異なるヘッダーが必要です。ユーザーアクセスの詳細は$ rootScope.userDetailsに格納されます。ログアウトするとすぐにプロパティが$ rootScopeオブジェクトから削除されます。問題は私のヘッダーファイルがオブジェクトの変更を認識せず、アプリケーション全体に元のヘッダーを表示し続けることです。

<html ng-app="app"> 
<head> 


</head> 
<body ng-controller="mainController" > 


<div class="main"> 
    <!-- Render views --> 
     <div class="sections"> 
      <section ng-show="angular.isDefined(userDetails)"> 
       <!-- Second Header --> 

私は{{userDetails!== undefined}}でも役に立たないようにしました。 console.log($ rootScope.userDetails)は、私がログインしてログアウトしたときにオブジェクトプロパティが削除され、適切に追加されたことを通知します。ヘッダー/フッターコードはAngularJSによって静的として扱われ、ng-viewは動的にデータを追加するものと思われます。

答えて

0

angular.isDefined(userDetails)はあなたのビューでは機能しません。angularオブジェクトはあなたの範囲に含まれていません。 ng-show="userDetails !== undefined"を試すことができます。

関連する問題