如何在angularJS中管理一个页面的两个路由

时间:2018-03-13 06:32:47

标签: angularjs api routes

我有一个角度为1的页面用于离开工作流程,我想将它用于两个不同的路线!每小时休假和每日休假。页面中的某些组件按小时或每日状态更改。我该怎么做?

    one page 'Leave.html' for tow route:
    www.....com/leave/hourly
    www.....com/leave/daily

我可以在控制器中使用当前路径,拆分并获取最后一部分,然后在交换机情况下使用最后一个关键字,每小时一次'和'每日'?

有角度路线吗?

感谢

2 个答案:

答案 0 :(得分:0)

我认为您可以使用最后一部分/hourly/daily作为您网页的路由参数/leave

查看此链接,了解有关传递可选参数的详情:link

答案 1 :(得分:0)

如果您使用的是ngRoute

$routeProvider
.when("/dashboard",
{
    templateUrl: "dashboard.html",
    controller: "dashboardController"
})
.when("/leave/:leaveMode",
{
    templateUrl: "Leave.html",
    controller: "leaveController"
})
.otherwise(
{
    redirectTo: "/dashboard",
    controller: "dashboardController"
});

leavecontroller内,您可以使用$routeParams

访问leaveMode
$routeParams.leaveMode

如果网址为www.....com/leave/hourly,则$routeParams.leaveMode值将为hourly

如果网址为www.....com/leave/daily,则$routeParams.leaveMode值将为daily

因此,在控制器内部,您可以使用以下示例逻辑

$scope.isHourly = false;
if($routeParams.leaveMode == "hourly"){
    $scope.isHourly = true;
}

在html和js中,您可以使用布尔值$scope.isHourly

显示/隐藏组件或执行任何逻辑