【发布时间】:2017-01-22 15:00:56
【问题描述】:
Link1:个人资料
Link2:更新
查看:common.html
这两个链接是 home.html 的一部分
因此,在我的应用程序中,配置文件和更新都将重定向到 common.html。在 ng-show 的帮助下,我会在点击链接时显示某些部分。
这是一个 mycode 的例子。在实际场景中,视图存放在 view/common.html 中的不同路径
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
$scope.get = function(d) {
if (d == 1) {
$scope.pro = true;
$scope.set = false;
} else if (d == 2) {
$scope.set = true;
$scope.pro = false;
}
}
});
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<body ng-app="myApp" ng-controller="myCtrl">
<div ng-click="get(1)">Profile</div>
<div ng-click="get(2)">Setting</div>
<div ng-show="pro"> This is my profile </div>
<div ng-show="set"> This is my settting </div>
</body>
</html>
问题: 当我刷新页面时,页面变为空白。
我想要的是,如果我单击任一链接然后刷新,它应该会显示我所在的相应页面。我尝试通过 localstorage 来实现这一点,方法是在 localstorage 中为两个链接设置唯一 ID。
但我不知道如何实现这一点。请帮帮我。
【问题讨论】:
-
将
pro或set设置为控制器中的默认页面。$scope.pro=true; $scope.set = false; -
它是解决方案之一。但是,如果我想显示当前用户所在的特定页面,那么解决方案是什么? @hadiJz
-
当你重新加载页面时,scope.set和scope.pro是未定义的!!所以这是完全正常的,因为角度 ng-show 条件不正确!!
-
你真正想做什么??你想实现什么默认行为?
-
默认情况下是否应该显示我访问的页面。如果我在设置页面上,那么它应该在 reloaf 之后显示设置页面,并且与配置文件一相同。我认为我们可以使用本地存储来实现它,但是我怎么不明白。 @Sphinx117
标签: angularjs local-storage ng-show