将之前的历史路线与 angular 中的当前路线进行比较

Compare previous history route with current route in angular

如果用户在 angularjs ng-route 之前在当前页面中,是否有可能获取先前的回击路线并与当前路线进行比较? 例如 如果用户在列表提要上并单击项目,然后点击 default/site 后退按钮返回当前页面,则当前页面将知道 he/she 之前在此处。

您可以使用 $rootScope 实现您自己的路由历史:

$rootScope.$on('$locationChangeStart', function(ev, newUrl, oldUrl) {
    // Push previous Url into array.
    $rootScope.routes.push(oldUrl);
});

然后与当前路线比较:

$rootScope.$on('$locationChangeSuccess', function(ev, newUrl) {
    // Check if you've been here before.
    var visited = $rootScope.routes.indexOf(newUrl) !== -1;
});

不要忘记将 $rootScope 注入到您的控制器中:

App.run(['$rootScope', function($rootScope) {
    $rootScope.routes = [];
});