访问用于路由的路径格式

时间:2015-06-30 18:40:10

标签: angularjs angularjs-routing

我希望能够访问用于路由的路径格式。例如,给定以下配置:

app.config(function($routeProvider){
    $routeProvider
        .when('/users/:id/edit', {
            templateUrl: 'users/form.html',
            controller: 'UsersController'
        })
        .when('/users/:id', {
            templateUrl: 'users/show.html',
            controller: 'UsersController'
        })
        .otherwise({ redirectTo: '/' });
});

我希望我的UsersController能够访问用于路由的路径格式字符串(例如'/users/:id/edit')。我能够找到的唯一方法是在控制器中注入$route作为依赖项,然后访问属性$route.current.$$route.originalPath。这是有效的,但它使用了私人' $$route财产。我想使用更合法的法律服务。如果可能的话。

1 个答案:

答案 0 :(得分:0)

$$模式是"保护"图书馆'由不知情的用户修补他们的内部。话虽这么说,有时你需要修补内部结构;),例如,您正在创建特定的内容以及不是典型的用例。

必须知道使用的路径格式非常不典型,因此我认为使用$route.current.$$route.originalPath可能是正确的解决方案。通常是"隐藏"因为通常我们不需要这个值,但最后他们确实在应用程序中有一个功能,似乎你需要它。