Angular uiRouter 在带有 stateParams 的新窗口或选项卡中打开状态

Angular uiRouter 在带有 stateParams 的新窗口或选项卡中打开状态

问题描述:

我想要做的是在新标签页或新窗口中关注:

What I want to do is following in but in a new Tab or new Window:

$state.go('studentsReport', {
       type: $scope.report.type, // string
       selectedStudents: $scope.selectedStudents // array of strings
});

如果我这样做了:

var link = $state.href('studentsReport', {
       type: $scope.report.type,
       selectedStudents: $scope.selectedStudents
});

window.open(link, '_blank');`

我会丢失参数.

最好的问候,马塞尔

你应该尝试使用这个:

/* @ngInject */
function SomeCtrl ($state, $window) {
  $window.open($state.href('stateName', {}, {absolute: true}), '_blank');
}

注意:/* ngInject */ 如果使用 ng-annotate(在 cligulp 和 grunt 口味)

Note: the /* ngInject */ facilitates automatic dependency injection annotation if using ng-annotate (available in cli, gulp, and grunt flavours)