我正在調用ng-init上的函數,並在該頁面中按下按鈕,我將新頁面推向導航器的pageStack。在子頁面中,我彈出當前頁面。現在我想在頁面堆棧中刪除子頁面時重新加載父頁面。AngularJS OnsenUI在子頁面上的nav.popPage()上重新加載父頁面
下面是代碼:
HTML
<ons-navigator var="nav" page="page1.html">
</ons-navigator>
<ons-template id="page1.html">
<ons-page ng-controller="pageOneController" ng-init="reload()">
<ons-toolbar>
<div class="center">Page 1</div>
</ons-toolbar>
<ons-button ng-click="nav.pushPage('page2.html')">Push Page</ons-button>
</ons-page>
</ons-template>
<ons-template id="page2.html">
<ons-page>
<ons-toolbar>
<div class="center">Page 2</div>
</ons-toolbar>
<ons-button ng-click="nav.popPage();">Pop Page</ons-button>
</ons-page>
</ons-template>
AngularJS
module.controller('pageOneController', function(){
$scope.reload = function(){
console.log('Page one controller reloaded');
}
});
更新
一個解決方案是使用
window.location.reload(true);
這個我試過,但重裝功能沒有召回在replacePage 所以我用window.location.reload(真)重新加載整個應用程序; – 2015-04-08 09:14:16
檢查我提供的Codepen控制檯。每次按下'popPage'按鈕時都會出現一條新消息...因此正在調用重載功能。 – 2015-04-08 09:54:04
但是你的答案似乎是正確的。當我完成我的應用程序的設計後,會試試這個。 – 2015-04-09 05:20:23