Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
angularJs中的动态嵌套路由_Angularjs_Angular Ui Router_Angular Routing_Ngroute - Fatal编程技术网

angularJs中的动态嵌套路由

angularJs中的动态嵌套路由,angularjs,angular-ui-router,angular-routing,ngroute,Angularjs,Angular Ui Router,Angular Routing,Ngroute,正在尝试使用angular stateProvider实现以下路由系统: some_domain.com/abc/pqr/xyz 问题是“some_domain.com”之后的级别数可能会有所不同。它可以像 some_domain.com/abc/pqr/xyz some_domain.com/abc/pqr some_domain.com/abc some_domain.com/abc/pqr/xyz/1234 在州定义中尝试了多种方法: $stateProvider .stat

正在尝试使用angular stateProvider实现以下路由系统:
some_domain.com/abc/pqr/xyz
问题是“some_domain.com”之后的级别数可能会有所不同。它可以像

  • some_domain.com/abc/pqr/xyz
  • some_domain.com/abc/pqr
  • some_domain.com/abc
  • some_domain.com/abc/pqr/xyz/1234
在州定义中尝试了多种方法:

$stateProvider
    .state('dummy', {
        url: '/*',
        templateUrl: 'views/home.html',
        controller: 'LandingPage'
    });
}]);


有人能帮我解决这个问题吗?

因为您所说的参数是路由本身的一部分,所以您不能用一条路由来处理所有这些情况。我可以想出两种方法:

  • 为每个案例创建单独的路线
  • 如果可以相应地修改逻辑,请使用可选参数。如果参数可以是可选的,那么它们应该作为查询参数发送,而不是作为URL的一部分发送。因此,URL变成如下所示:

    url: '/dummy?param1?param2?param3'