我在/dailyReport/:dayId之类的路线上投放了一个大型而复杂的视图

当用户在不同的每日报告之间导航时,我只想用新的DailyReportController更新dayId而不是重新加载整个控制器。

我怎样才能做到这一点?

最佳答案

您可以使用$location.search()reloadOnSearch: false,然后在查询字符串中传递dayId:

.when('/dailyReport', {
    templateUrl: 'view.html',
    controller: 'MainCtrl',
    reloadOnSearch: false
})


要获取有关dayId更改的通知:

$scope.$on('$routeUpdate', function(){
  console.log($location.search().dayId);
});


然后链接到新的一天:

<a href="#/dailyReport?dayId=2">Change day to 2</a>


Plunkr

07-24 16:15