首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >角js应用程序中的回键行为

角js应用程序中的回键行为
EN

Stack Overflow用户
提问于 2015-05-21 14:22:39
回答 1查看 1K关注 0票数 0

我有一个问题,SPA应用程序编写的angularJS。应用程序由三个视图组成-登录视图、主视图和注销视图。

  • myapp/#/登录
  • myapp/#/main
  • myapp/#/注销

我的线路提供商:

代码语言:javascript
复制
function Router($routeProvider) {
    $routeProvider
        .when('/login', {
            templateUrl: 'app/components/login/login.tmpl.html',
            controller: 'login.ctrl',
            controllerAs: 'vm'
        })
        .when('/main', {
            templateUrl: 'app/components/dashboard/main.tmpl.html',
            controller: 'dashboard.ctrl',
            controllerAs: 'vm'
        })
        .when('/logout', {
            templateUrl: 'app/components/logout/logout.tmpl.html',
            controller: 'logout.ctrl',
            controllerAs: 'vm'
        })
        .otherwise({
            redirectTo: '/login'
        });
}

用例: 1)用户登录。2)用户在主视图中查看内容,3)用户注销。4)用户被重定向到注销视图以进行确认5)用户被重定向到登录视图

如果在步骤5之后按后退浏览器按钮,我将被重定向到主视图。在登录视图中,是否有一种方法可以更改后退按钮的行为?我相信这是一件很简单的事情,如果问题重复了,我很抱歉。感谢您的时间和回应!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-21 14:52:51

请参阅工作示例:http://plnkr.co/edit/46O0znC5HFDE4cYXSm5h?p=preview

在登录函数中将数据存储在cookie中,如下所示:

代码语言:javascript
复制
$cookies.userinfo = {
    'id': 1,
    'name': 'pqr'
};

在登出时删除那些数据-

代码语言:javascript
复制
delete $cookies.userinfo;

然后检查'angular.isDefined($cookies.userinfo)‘(userinfo是在存储数据时给出的cookie名称),如果查找,然后将其重定向到您想要在登录后查看的页面。i.e

代码语言:javascript
复制
app.run(function ($cookies) {
      $rootScope.$on("$routeChangeStart", function () {
        if (angular.isDefined($cookies.userinfo)) {
            $location.path("/pathname");
        }

      });
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30376568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档