假定當前頁面為editCata頁面,要返回的是cataDetail頁面。目前我找到兩種方法實現返回上一頁並刷新,如果以后有其它方法,再繼續添加。
1、在editCataCtrl.js中注入$ionicHistory服務. 使用$ionicHistory.goBack()方法即可返回到上一頁面。
JS端代碼:
1 $scope.goBack=function(){ 2 $ionicHistory.goBack(); 3 }
HTML代碼:
<button class="button button-clear" ng-click="goBack()">返回上一頁</button>
如果需要返回上一頁時,重試加載頁面,在上一頁editCataCtrl.js中添加以下代碼:
//其他頁面返回此頁面時刷新數據 $scope.$on('$stateChangeSucess',$scope.doRefresh);//doRefresh為自定義的方法,可根據個人需要調用
2、可以試一下$state.go("路徑名",{參數},{reload:true});
******************************************************
上述的刷新頁面效果在實際過程中並沒有起到效果,可以通過
$ionicView.beforeEnter
事件刷新頁面
//其他頁面返回此頁面時刷新數據 //$scope.$on('$stateChangeSucess',$scope.doRefresh);//doRefresh為自定義的方法,可根據個人需要調用 //上面方法經測試是沒有效果的。reload也不能刷新頁面,經測試可以用下面的事件刷新頁面 $scope.$on('$ionicView.beforeEnter',$scope.doRefresh);
如果還不行,在ion-view設置catch為false
<ion-view cache-view="false" class="cata-detail-page" animation="slide-in-up">
3、Ionic中有個beforeEnter事件,可以把頁面初始化的方法這這個事件中調用,下面代碼中doRefresh方法是自己定義的刷新頁面的方法
1 $scope.$on('$ionicView.beforeEnter', function () { 2 $scope.doRefresh();//刷新頁面 3 });