Ionic 缓存视图以获得更快的性能。它使用ng-router的特性。
Ionic 最多可以缓存 10 个视图,不仅可以进行配置,应用还可以明确声明哪些视图应该和不应该被缓存。
http://ionicframework.com/docs/api/directive/ionNavView/
有多种方法可以解决此问题。
选项 1
如果您希望控制器在每次显示视图时都执行,您可以禁用该特定路由的缓存。
$stateProvider.state('myState', {
cache: false,
url : '/myUrl',
templateUrl : 'my-template.html'
})
或
<ion-view cache-view="false" view-title="My Title!">
...
</ion-view>
选项 2
您可以禁用所有视图的缓存。甚至控制观看次数。我不知道这对你是否有用。
$ionicConfigProvider.views.maxCache(0);
选项 3
我的最爱。您可以使用$ionicView.enter 事件。这保证了在视图应该执行时需要执行的代码。因此,您可以区分代码应该每次都执行一次。我想这会对性能产生积极影响。
用法
$scope.$on('$ionicView.enter', function(){
// Coding
});
祝你好运,编码愉快!