最近我发现AngularJS中的未记录的$ locationChangeStart事件在尝试确定框架中的哪个位置时,如果他们的会话无效,我应该将用户重定向到登录页面。
我正在使用以下内容收听该活动:
$scope.$on("$locationChangeStart", function (event, nextLocation, currentLocation) {
// Logic goes here
});
其中nextLocation
和previousLocation
是应用内位置的绝对网址。
我的问题是:AngularJS是否公开了能够将URL与路由匹配的能力,就像它的内部路由引擎一样,看看绝对URL是否与定义的路由匹配?
如果没有,基于绝对URL检测路由的最佳方法是什么?
答案 0 :(得分:3)
我找到了AngularJS github项目中的相关源代码行。 Here是用于将URL与路由匹配的函数:
由于Angular没有公开这个功能,我决定提出一种将URL与路由匹配的基本方法,因为我匹配的路由与实现与Angular相同的路由相比相对简单。
它不漂亮,但它有效..