【发布时间】:2020-03-04 14:59:16
【问题描述】:
我为所有错误的 URL 定义了一个状态
.state('404', {
url: '/404',
data: { title: 'Page not found' },
templateUrl: errorHandlerTemplate,
parent: 'authenticated'
})
我设置了重定向以使其正常工作
$urlRouterProvider.otherwise('/404');
我想获取用户在重定向发生之前尝试输入的原始 URL。
$transitions.onBefore({ entering: '404' }, function(trans) {
console.log(trans.from().name);
console.log(trans.to().name);
});
'trans.to().name' 似乎总是保存值 '404',这是重定向后的最终 URL。有没有办法获取被丢弃的原始Url?
【问题讨论】:
-
如果 UI 路由器进行了重定向,那么就有可能获得之前的 URL。如果服务器进行了重定向,那么就没有机会了。你能澄清一下吗?
-
'$urlRouterProvider.otherwise('/404')' 是客户端的重定向
标签: javascript angularjs angular-ui-router transition