7

在离子我可以回去只使用:

var backView = $ionicViewService.getBackView();
backView && backView.go();

问题是怎么去backView之前的view?就像是:

var backBackView = $ionicViewService.getView(-2);
backBackView && backBackView.go();
4

3 回答 3

16

经过一些实验后,我以下一个解决方案结束:

var backView = $scope.$viewHistory.views[$scope.$viewHistory.backView.backViewId];
$scope.$viewHistory.forcedNav = {
    viewId:     backView.viewId,
    navAction: 'moveBack',
    navDirection: 'back'
};
backView && backView.go();

这对我来说看起来很糟糕,但成功地解决了这个问题。我希望这会对某人有所帮助。

更新:现在您实际上可以致电

$ionicHistory.goBack(-2);

这在ionic 的文档中有所描述。

于 2014-03-16T19:33:18.387 回答
9

我发现以下方法是在视图堆栈深处时返回的最快方法:

$ionicHistory.goBack();

我相信您可以在循环中多次调用它以继续返回视图历史记录。当然,您必须在控制器中注入 $ionicHistory。

于 2015-01-13T00:19:24.890 回答
2

现在可以在夜间使用$ionicGoBack(amount) https://github.com/driftyco/ionic/commit/63a0834d63eb87b86238fccde4bf4e77f3540085

于 2015-04-23T23:51:55.290 回答