mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2026-03-13 10:22:08 +08:00
feat(goBack): specify how many views to go back
This commit is contained in:
20
js/angular/controller/navViewController.js
vendored
20
js/angular/controller/navViewController.js
vendored
@@ -221,18 +221,32 @@ function($scope, $element, $attrs, $compile, $controller, $ionicNavBarDelegate,
|
||||
};
|
||||
|
||||
|
||||
self.clearCache = function() {
|
||||
self.clearCache = function(stateIds) {
|
||||
var viewElements = $element.children();
|
||||
var viewElement, viewScope;
|
||||
var viewElement, viewScope, x, l, y, eleIdentifier;
|
||||
|
||||
for (var x = 0, l = viewElements.length; x < l; x++) {
|
||||
for (x = 0, l = viewElements.length; x < l; x++) {
|
||||
viewElement = viewElements.eq(x);
|
||||
|
||||
if (stateIds) {
|
||||
eleIdentifier = viewElement.data(DATA_ELE_IDENTIFIER);
|
||||
|
||||
for (y = 0; y < stateIds.length; y++) {
|
||||
if (eleIdentifier === stateIds[y]) {
|
||||
$ionicViewSwitcher.destroyViewEle(viewElement);
|
||||
}
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
if (navViewAttr(viewElement) == VIEW_STATUS_CACHED) {
|
||||
$ionicViewSwitcher.destroyViewEle(viewElement);
|
||||
|
||||
} else if (navViewAttr(viewElement) == VIEW_STATUS_ACTIVE) {
|
||||
viewScope = viewElement.scope();
|
||||
viewScope && viewScope.$broadcast('$ionicView.clearCache');
|
||||
}
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user