Angular JS - 无法通过我的路由代码

时间:2017-04-28 10:08:24

标签: angularjs

出于某种原因,我无法点击控制器帖子,我的路由逻辑被调用。虽然我已经尝试跟踪路由,但我在控制台日志中看不到任何消息。请你在这里指导我吗?

ROUTING

angular
    .module('icebergApp')
    .config(setupRouting);

setupRouting.$inject = ['$stateProvider', '$urlRouterProvider'];

function setupRouting($stateProvider, $urlRouterProvider) {
    $urlRouterProvider.otherwise("/iceberg-ui");
    $stateProvider
        .state('iceberg.reconlist', {
            url: "/iceberg-ui",
            templateUrl: "app/iceberg/reconlist/reconlist.view.html",
            controller: 'ReconListController as vm'
        })


}
}());

angular.module('app').run(setupRoutingEventListeners);

setupRouting.$inject = ['$rootScope'];

function setupRoutingEventListeners($rootScope) {
        $rootScope.$on('$stateChangeStart',function(event, toState, toParams, fromState, fromParams){
        console.log('$stateChangeStart to '+toState.name+'- fired when the transition begins. toState,toParams : \n',toState, toParams);
    });
    $rootScope.$on('$stateChangeError',function(event, toState, toParams, fromState, fromParams, error){
        console.log('$stateChangeError - fired when an error occurs during transition.');
        console.log(arguments);
    });
    $rootScope.$on('$stateChangeSuccess',function(event, toState, toParams, fromState, fromParams){
        console.log('$stateChangeSuccess to '+toState.name+'- fired once the state transition is complete.');
    });
    $rootScope.$on('$viewContentLoading',function(event, viewConfig){
        console.log('$viewContentLoading - view begins loading - dom not rendered',viewConfig);
    });

    $rootScope.$on('$stateNotFound',function(event, unfoundState, fromState, fromParams){
        console.log('$stateNotFound '+unfoundState.to+'  - fired when a state cannot be found by its name.');
        console.log(unfoundState, fromState, fromParams);
    });
   }

CONTROLLER

(function() {
    'use strict';

    var myApp = angular.module('iceberg.reconlist');
    myApp.controller('ReconListController', ReconListController);

    ReconListController.$inject = ['ReconListService'];

    function ReconListController(ReconListService) {
        var vm = this;
}
}());

MODULE

(function() {
    'use strict';

    angular.module('icebergApp', [
               'ui.router',
        'iceberg.reconlist'
    ]);

    angular.module('iceberg.reconlist', [
    ]);    
}());

2 个答案:

答案 0 :(得分:1)

您可以通过

定义模块

angular.module('icebergApp', []);

以后你用过

angular.module('app').run(setupRoutingEventListeners);

这是主要问题。

答案 1 :(得分:0)

更改

    controller: 'ReconListController as vm'

    controller: 'ReconListController'