首页 > 解决方案 > 重定向路由html5Mode不起作用

问题描述

重定向路由html5Mode不起作用

Just only setup this $locationProvider.hashPrefix('!').html5Mode(false); into app.js

当我点击 localhost:9000 时,路由重定向问题 hashPrefix 无法正常工作,它应该将我带到 localhost:9000/#!/login 但它会将我重定向到 localhost:9000/# 为什么请建议

$locationProvider.hashPrefix('!').html5Mode(false);

$routeProvider

    // Root URL.
    .when('/', {
      redirectTo: '/login',
      title: 'Login'
    })
    .when('/login', {
      templateUrl: 'views/login.html',
      controller: 'login',
      title: 'Login'
    })
    .when('/term_of_services', {
      templateUrl: 'views/term_of_services.html',
      title: 'Privacy Policy'
    })
    .otherwise('/login');

标签: angularjs

解决方案


可能是您做错了导致此问题的地方。

如果您只有一个案例重定向成功登录,那么您可以执行此技巧。

使用路径([路径]);

这个方法是getter/setter。

不带任何参数调用时返回当前 URL 的路径。

使用参数调用时更改路径并返回 $location。

var url = $location.path();

if(url == '' || url == '/'){
      $location.path('login');
    }

推荐阅读