我对app.run()有问题。在主页上app.run()正在运行。当我单击菜单按钮“事件”时,在页面中,events.html app.run()不起作用。但是,当我重新加载此页面时,app.run()正在工作。我不知道该怎么办。页面main.html和events.html位于ngView中,菜单也位于ngView中。
controller.js

afroEarthApp.config(['$routeProvider', function($routeProvider){
    $routeProvider
      .when('/',{
        templateUrl:'template/home.html',
        controller:'afroEarthMainCtrl'
      })
      .when('/events',{
        templateUrl:'template/events.html',
        controller:'eventsCtrl'
      })
      .when('/sites/:niche', {
        templateUrl:'template/single.html',
        controller:'SingleCtrl'
      })
      .otherwise({
        redirectTo: '/'
      })
}]);
afroEarthApp.controller('afroEarthMainCtrl',['$scope','$http','$location','$cookies', '$rootScope', '$route', function($scope, $http, $location, $cookies, $rootScope, $route) {
...some code...
}]);

afroEarthApp.controller('eventsCtrl',['$scope','$http','$location','$cookies', '$rootScope', '$route', function($scope, $http, $location, $cookies, $rootScope, $route) {
...some code...
}]);

afroEarthApp.run(['$log', '$rootScope', '$route', function ($log, $rootScope, $route) {
    $rootScope.$on('$viewContentLoaded', function ($rootScope, $route) {
...some code...
})
}]);


home.html

        <ul class="nav navbar-nav navbar-right">
            <li><a class="page-scroll" href="#websites">Lifestyle sites</a></li>
            <li><a class="page-scroll" href="stories">Success Stories</a></li>
            <li><a href="#/events" data-target="#events" target="_self">Events</a></li>
            <li><a class="page-scroll" ng-href="http://{{singleNiche.url}}.afroearth.com/login/">Login</a></li>
            <li class="other-countries">
                <a href="#">
                    {{singleNiche.country}}<img src="{{singleNiche.countryFlag}}"><i class="icon-caret-down"></i>
                </a>
                <ul>
                    <li ng-repeat="country in singleNiche.countries"><a ng-click="setCountry(country.url)" >{{country.name}}</a></li>
                </ul>
            </li>
        </ul>


你能帮我吗?

最佳答案

在您的app.run中添加以下内容

 $rootScope.$on('$locationChangeStart', function (event, nextLocation, currentLocation) {
//your code here
});


每次更改网址时都会调用此函数。

关于javascript - AngularJS app.run无法加载,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36476876/

10-12 00:04
查看更多