2016-08-21 16 views
0

我創建一個AngularJS應用程序,並在JS-Controlleri頂部我寫的的console.log()消息:爲什麼我在使用AngularJS的控制檯加載頁面之後有兩條消息?

var myApp = angular.module("myApp", ['ngRoute']); 
myApp.controller("defaultController", function ($scope, $location, logicOfMyApp) { 
    console.log("My daddy is duck, my mommy is duck and i'm duck too ..."); 
}); 

後加載頁面我有兩條消息: enter image description here

爲什麼我有兩條消息?

P.S.I在加載頁面之前清除了控制檯。

路由腳本:

myApp.config(['$routeProvider', function ($routeProvider) { 
$routeProvider.when('/', { 
    templateUrl: "Partials/Books.html", 
    controller: "defaultController" 
}) 
.when('/books', { 
    templateUrl: "Partials/Books.html", 
    controller: "defaultController" 
}) 
.when('/albums', { 
    templateUrl: "Partials/Albums.html", 
    controller: "defaultController" 
}) 
.when('/audios', { 
    templateUrl: "Partials/Audios.html", 
    controller: "defaultController" 
}) 
.when('/videos', { 
    templateUrl: "Partials/Videos.html", 
    controller: "defaultController" 
}) 
.when('/album/:albumId', { 
    templateUrl: "Partials/PhotosOfAlbum.html", 
    controller: "defaultController" 
}) 
; 

$routeProvider.otherwise({ redirectTo: '/' }); 
}]); 
+0

可以顯示路由腳本? – AranS

+1

從模板中移除'ng-controller =「defaultController」''。 – dfsq

+0

你能告訴我們你的'html'文件和'route'文件嗎? – Miqe

回答

1

原因:

第一個是當你加載它通過所有的控制器代碼的應用程序。

第二個是因爲當頁面被路由到它打印的特定控制器時使用ngRoute。

爲了避免,您需要從您的視圖中刪除ng-controller="defaultController",如果您在配置中提到過。

1

您使用defaultController//videos所以你的控制器初始化兩次所以更改控制器或者路由的,你不會看到該日誌兩次

相關問題