<h1>{{页眉}}</h1><!-- 此后退按钮有多个选项--><!-- 在主页中,它将显示菜单--><!-- 在其他视图中,它将显示反向链接--><a ng-href=“{{back.url}}”>{back.text}}</a><div ng-view>
在我的模块配置中
$routeProvider。when('/'{控制器:HomeCtrl,模板URL:'home.html'}).when(“/menu”{控制器:MenuCtrl,templateUrl:“菜单.html”}).when('/items'{控制器:ItemsCtrl,templateUrl:'items.html'}).否则({重定向到:“/”});
控制器
函数HomeCtrl($scope,$rootScope){$rootScope.header=“主页”;$rootScope.back={url:“#/menu”,text:“menu”};}功能菜单Ctrl($scope,$rootScope){$rootScope.header=“菜单”;$rootScope.back={url:“#/”,文本:“后退”};}函数ItemsCtrl($scope,$rootScope){$rootScope.header=“项目”;$rootScope.back={url:“#/”,文本:“后退”};}
正如你在我的控制器中看到的那样,我已经硬编码了后退按钮的url和文本(事实上,我不需要使用图像的文本)。通过这种方式,我发现在某些情况下后退按钮导航错误。我不能使用history.back()
因为我的后退按钮变为主视图中的菜单链接。
所以我的问题是如何在控制器中获得之前的路由路径,或者是实现这一点的更好方法?
我创建了一个Plunker公司证明我的问题。请检查一下。