angularjs - 事件 $scope.$on ('$destroy' ) 无法更新 ionic & angular

标签 angularjs ionic

我使用 $interval 并且需要检测 Controller 何时被破坏。到目前为止,我使用了 $destroy 事件,它运行良好 .例如,使用这个基本代码,当我转到另一个页面时,它会在控制台中打印“销毁”(在 myView.html 中使用简单的 <a href="#/myNewUrl">)。

angular.module('myModule').controller('myController', ['$scope', function($scope) {

    $scope.$on('$destroy', function() {
        console.log('destroy');
    });

}]);

但是因为我将 Ionic 更新到新版本 (v1.0.0-beta.14), 也使用新版本到 Angular (v1.3.6), 未检测到 $destroy 事件 当我转到另一个页面时。

有人遇到同样的问题吗?我该如何解决?
谢谢你的回答!

编辑 :

我终于解决了问题!!!现在,有了新的 Ionic 版本, View 自动缓存 .添加 cache-view="false"在模板中禁用它。

但是我发现了一个最好的方法是销毁事件 . Ionic 添加了新事件(在 $ionicView 上),现在您可以通过以下方式检测何时离开页面(并且页面保持缓存):$ionicView.leave .

获取更多信息:http://ionicframework.com/docs/nightly/api/directive/ionView/

最佳答案

你的模板缓存了吗?如果您没有 cache: false在您的状态路由中, Controller 不会被破坏。

关于angularjs - 事件 $scope.$on ('$destroy' ) 无法更新 ionic & angular,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27690330/

相关文章:

angularjs - 重复器错误中的重复 key [ngRepeat :dupes]

javascript - SPA - Firebase 和 .Net WebApi 2 身份验证

javascript - 在 $watch 中使用 $apply

angularjs - 刷新解析数据 - Ui 路由器

android - ionic 错误: may not have the required environment or OS to build this project

angularjs - Angular Bootstrap Modal 将背景打开

javascript - AngularJS ng-repeat 模型值预先分配

ionic-framework - 上传 ionic 应用程序时出错

ionic-framework - ionic View 管理应用程序

ionic-framework - ionic :如何覆盖后退按钮功能?