While Fran's answer works great, there is a small flicker / hiccup in the UI when the page gets replaced. I took a slightly different approach by using insertPage()
and changing the order of ops. The end result is smoother UI flow:
$scope.replacePreviousPage = function(url) {
var pages = $scope.nav.getPages(),
index = pages.length - 2;
if (index < 0)
return;
$scope.nav.insertPage(index, url);
pages.splice(index, 1);
};
You can create another function to encapsulate the replacing and popping, or just call them like:
$scope.replacePreviousPage('views/page1.html');
$scope.nav.popPage();
I am thinking of patching this into popPage()
as an option (i.e. option.reloadPage
) and submitting a pull request.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…