【问题标题】:AngularJS: How to get the previous url and replace its parameters?AngularJS:如何获取以前的 url 并替换其参数?
【发布时间】:2017-09-15 06:18:58
【问题描述】:

我在我的应用程序中使用 angular $routeProvider 来更改网址。我想获取以前的 url 并替换它的一些路由参数。

$routeProvider.when("/editUser/:userId", {
  templateUrl: "app/user/userEdit.html", 
  controller: "UserCtrl"
});

例如,如果我之前的url是上面那个,我想把它的参数userId改成别的。 (之前的网址:/editUser/1,我想改成:/editUser/2

我可以使用 AngularJS 做类似的事情吗?

【问题讨论】:

  • 应用程序应该如何决定去/editUser/2而不是/editUser/3/editUser/1?什么应该触发此操作?...浏览器后退按钮...或网页内的用户交互?
  • @MatthewCawley 回答您的问题 - 网页内的用户交互

标签: angularjs browser-history routeparams


【解决方案1】:

您可以为此目的使用角度路线更改事件,例如

$routeChangeStart, $routeChangeSuccess, $routeChangeError, $routeUpdate

这是一个例子

    $rootScope.$on('$routeChangeStart', function(event, next, current) {
        console.log("Next - "  + next.$$route.originalPath);
        console.log("Current - "  + current.$$route.originalPath);
    });

您可以将其存储在任何范围值中。

【讨论】:

    猜你喜欢
    • 2019-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-16
    • 2011-07-31
    • 2016-01-01
    相关资源
    最近更新 更多