Ionic $ ionicview.loaded不起作用

时间:2015-11-15 15:13:01

标签: ionic-framework ionic

$ ionicview.loaded不起作用。

我可能会错过什么?

请帮帮我吗?

离子版:1.0.0-beta.13

我在发布之前检查了这个参考:

app.js

app.config(function($stateProvider, $urlRouterProvider) {
  $stateProvider

    .state('app', {
      url: "/app",
      cache : false,
      templateUrl: "templates/menu.html",
      controller: 'AppCtrl'
    })

.state('app.myPage', {
      url: "/myPage",
      cache : false,  
      views: {
        'menuContent' :{
          templateUrl: "templates/myPage.html",
          controller: 'myCtrl'
        }
      }
    })

controllers.js

appControllers.controller('myCtrl', ['$scope', '$rootScope', '$ionicScrollDelegate', '$ionicPlatform', '$ionicLoading', function($scope, $rootScope, $ionicScrollDelegate, $ionicPlatform, $ionicLoading) {

  console.log("step4"); // ok

  ionic.Platform.ready(function() {
    console.log("step5"); //ok

    $rootScope.$on('$ionicView.enter', function(){
      console.log("step7"); //no works
    });

    $rootScope.$on('$ionicView.loaded', function(){
      console.log("step6"); //no works
    });



    $rootScope.$on('$ionicView.leave', function(){
      console.log("step8"); //no works
    });

    $rootScope.$on('$ionicView.afterEnter', function(){
      console.log("step9"); //no works
    });

  });

}]);

我也是通过myPage.html

尝试过的
<ion-view cache-view="false" view-title="My Title!">
  ...
</ion-view>

1 个答案:

答案 0 :(得分:2)

将您的控制器更新为:

appControllers.controller('myCtrl', ['$scope', '$rootScope', '$ionicScrollDelegate', '$ionicPlatform', '$ionicLoading', function($scope, $rootScope, $ionicScrollDelegate, $ionicPlatform, $ionicLoading) {


    $scope.$on('$ionicView.enter', function(){
      console.log("step7"); 
    });

    $scope.$on('$ionicView.loaded', function(){
      console.log("step6");
    });



    $scope.$on('$ionicView.leave', function(){
      console.log("step8"); 
    });

    $scope.$on('$ionicView.afterEnter', function(){
      console.log("step9"); 
    });


}]);