Angular SPAアプリケーションでは、$ rootScopeにあるng-show指示変数に基づいてログイン画面が表示/非表示になります。Angular JS - ページに表示されるログイン画面アプリケーションの更新(F5)
ユーザーがホームページにあり、ページをリフレッシュすると(F5)、「完了」ページがリフレッシュされ、失われたルートスコープの変数値としてログイン画面が表示されます。
この問題を解決するにはどうすればよいですか?
コードサンプル::
<body ng-controller="mainController">
<div class="container" ng-controller="schoolLoginCtrl"
ng-show="showLogin">
<form class="form-signin" ng-submit="login()">
<h2 class="form-signin-heading">Login Page</h2>
<label for="userName" class="sr-only">User Name</label> <input
type="text" id="userName" ng-model="user.userName"
class="form-control" placeholder="User Name" required autofocus>
<label for="inputPassword" class="sr-only">Password</label> <input
type="password" id="inputPassword" ng-model="user.password"
class="form-control" placeholder="Password" required>
<div class="alert alert-danger">{{errorMsg}}</div>
<button class="btn btn-lg btn-primary btn-block" type="submit">Sign
in</button>
</form>
</div>
<div class="container" ng-show="!showLogin">
<div ng-view></div>
</div>
.controller('mainController', function($scope, $rootScope,
$location) {
$rootScope.showLogin = true;
});
これは私にとってはうまくいったステップです。 2) 'ngCookies'角度モジュールを追加します。 3)コントローラーに$ cookiesを追加します。 4)if($ cookies.get( ' showLogin ')!== undefined){ \t \t \t console.log( "update cookie"); \t \t \t $ rootScope.showLogin = $ cookies.get( 'showLogin'); \t \t \t $ cookies.put( 'showLogin'、$ cookies.get( 'showLogin')); \t \t}他{ \t \t \t $ rootScope.showLogin =はtrue。 \t \t \t console.log( "add cookie"); \t \t \t $ cookies.put( 'showLogin'、true); \t \t} – Madhu