angularjs - 重定向路由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');
解决方案
可能是您做错了导致此问题的地方。
如果您只有一个案例重定向成功登录,那么您可以执行此技巧。
使用路径([路径]);
这个方法是getter/setter。
不带任何参数调用时返回当前 URL 的路径。
使用参数调用时更改路径并返回 $location。
var url = $location.path();
if(url == '' || url == '/'){
$location.path('login');
}
推荐阅读
- javascript - 为什么文件名和字符串不相等?
- docker - 添加 docker GPG 密钥时出现错误(gpg:无法打开'-':没有这样的文件或目录)
- npm - NPM - 无法安装Packeges
- powershell - 通过两个驱动器之间的扩展名过滤并保留每个文件路径的强大复制大文件?
- angular - 使用 Angular 组件作为表单控件
- javascript - 加载存储在数据库中的 javascript 类
- ios - 检查多个数组是否为空或其计数 == 0
- javascript - div.dialog 不是 Modal Popup JQuery 3.5.1 中的函数
- c# - 棱镜对话框:无法解析分辨率根对象
- javascript - ngFor 只是设置最后一个元素的值