AngularJS ui-router刷新子页面路由

时间:2022-11-22 13:57:25

网上有各种刷新子页面路由的方法,但是不知道为什么放到我的页面就不行了,尴尬!

网上的方法有:

  

<a href="#" ui-sref="app.toMenu" ui-sref-opts="{reload:'app.toMenu'}">
<!-- 这个方法刷新当前路由页面 -->

另外也可以用$state.reload(); 
$state.reload()是加载整个页面; 
$state.reload('app.toMenu');加载当前页面;

<a href="" ng-click="reloadCurPage()">

<!-- controller里面 $scope -->
$scope.reloadCurPage = function(){
$state.reload('app.toMenu');
}

  如果以上方法都不行的,可以试一下这样:

  controllerjs里面:点击后,先reload刷新一下,然后定时器里面跳转到URL路由,这样就可以刷新子路由页面了。(定时器设置小一点,这样跳转就不会显得“生硬”)

  

 $scope.toSubPage = function (name) {
var param = {};
if (name == 'report') {
param = {id: 1};
}
$state.reload();
$timeout(function () {
$state.go('home.' + name, param,{reload:false});
},5) }