因此,当我的用户登录时,我有这个代码
var promise = UserFactory.doLogin(userCredentials);
promise.success(function (data, status) {
//set some localstorage vars
//only on login's success get additional data
var anotherPromise = UserDataFactory.getUserData();
anotherPromise.success(function (data, status){
if(data.code == 2){
$rootScope.userHead = true;
}
});
$rootScope.userHead = true;
将根据其值(true / false)显示/隐藏子菜单。子菜单的HTML是
<div class="panel panel-default text-center" style="text-align: center;" ng-hide="userHeader">
包含该菜单的页面包含在<div id="submenu" ng-include="'submenu.html'" ></div>
的某些页面中。那些页面是在这样的路线
.when('/user', {
templateUrl: 'user.html',
controller: 'userController',
animation: 'second',
access: {
requiredLogin: true
}
})
//user.html includes menu with ng-include="'submenu.html'"
当我转到用户页面时,$rootScope.userHead
有一个值,子菜单应该是隐藏的。如果我点击刷新,则$rootScope.userHead
为undifined
,我可以看到子菜单。
我没有看到任何覆盖$rootScope.userHead
。当我去另一页时,它是否会失去价值?它不应该保持其价值吗?
我错过了什么?我该如何解决这个问题?
由于
答案 0 :(得分:0)
如果您重新加载您的网页,您存储在 JavaScript变量中的所有信息都丢失。 $rootScope
只不过是JavaScript中的一个变量。如果您想存储持续重新加载页面的内容,则至少有以下几种可能:
作者:迈克尔。