Angular - 路由为什么我要调用我的控制器2次

3gw*_*ain 2 javascript node.js angularjs

我在角应用程序中使用路由.当页面加载时,我得到控制器功能触发2次..

如何避免这种情况或者有2次呼叫有什么用?

任何人帮助我并解释我做的错误?

这是我的html://我用玉!

header
            h1 Header
        div.content(ng-controller="HomeController")
            div(ng-view)
        footer
            h5 Footer
Run Code Online (Sandbox Code Playgroud)

这是我的js:

var locations = angular.module('location', ['ngRoute']);
locations.config(['$routeProvider', function($routeProvider) {
    $routeProvider
        .when('/', {
            controller: 'HomeController',
            templateUrl: 'views/home.html'
        })
        .when('/inbox/:name', {
            controller: 'InboxController',
            templateUrl: 'views/inbox.html'
        })
        .otherwise({redirectTo: '/'});
}]);
locations.controller('HomeController', ['$scope', function($scope){
    console.log('hi'); // i am getting 2 times consoled! -why?
   }]);
Run Code Online (Sandbox Code Playgroud)

Rah*_*zir 5

因为你有div.content(ng-controller="HomeController")模板.您不需要为ng-controller头模板显式定义指令,因为它已经与之关联使用$routeProvider