如何在Angular中添加动态开放路由?

时间:2015-10-28 11:46:58

标签: angularjs

在我的Angular应用中,我在run()

中的app.js内使用以下代码进行限制重定向
 var restrictedPage = $.inArray($location.path(), ['/login', '/register']) === -1;
 var loggedIn = $rootScope.globals.currentUser;
 if (restrictedPage && !loggedIn) {
     $location.path('/login');
 }

我还希望添加/route/action/:myParameter作为loginregister的一部分添加,其中myParameter是变量。

有没有办法实现这个目标?

1 个答案:

答案 0 :(得分:0)

如果要手动执行此操作,可以针对$ location.path()变量运行以下命令。

var toFind = '/route/action/'
var path   = $location.path()
if (path.substring(0, toFind.length) === toFind) {
  var myParameter = path.substring(toFind.length)
  ...
}

如果您有多个这样的路线,请考虑使用angular-route,这允许更好的语法,例如:

routeProvider.when('/route/action/:myParameter', ...)