所以我建立了一個網站來使用Angular Routing,但是我變得非常奇怪。當我訪問路由時,它似乎無限期地在控制器中運行代碼,直到選項卡崩潰。這裏是我的路由:AngularJs控制器代碼無限期運行
angular.module(app.appName)
.config([
'$routeProvider', function($routeProvider) {
$routeProvider
.when('/', {
controller: 'homeController',
caseInsensitiveMatch: true
})
.when('/MyWishlists', {
templateUrl: 'assets/html/areas/MyWishlists/myWishlists.html',
controller: 'myWishlistsController',
caseInsensitiveMatch: true
})
.when('/Login', {
templateUrl: 'assets/html/areas/login/login.html',
controller: 'loginController',
caseInsensitiveMatch: true
})
.otherwise({ redirectTo: '/' });
}
]);
這裏是我的loginController
:
angular.module(app.appName)
.controller('loginController', ['$scope',
function ($scope) {
console.log('login');
}]);
當我訪問http://localhost:50925/Login
會到Chrome瀏覽器結束其運行console.log('login');
一遍又一遍。我在這裏做什麼 這是造成這種情況,我從來沒有見過它?
難道是我的連接文件?我正在使用gulp將所有控制器合併到controllers.js
。
編輯:我也剛剛嘗試創建一個新的控制器,homeController
並將其添加到我的路線中,並且在其定義的任一路線上根本不使用homeController
。
angular.module(app.appName)
.config([
'$routeProvider', function($routeProvider) {
$routeProvider
.when('/', {
controller: 'homeController',
caseInsensitiveMatch: true
})
.when('/Home', {
controller: 'homeController',
caseInsensitiveMatch: true
})
.when('/MyWishlists', {
templateUrl: 'assets/html/areas/MyWishlists/myWishlists.html',
controller: 'myWishlistsController',
caseInsensitiveMatch: true
})
.when('/Login', {
templateUrl: 'assets/html/areas/login/login.html',
controller: 'loginController',
caseInsensitiveMatch: true
})
.otherwise({ redirectTo: '/' });
}
]);
angular.module('wishlist')
.controller('homeController', ['$scope',
function ($scope) {
console.log('home');
}]);
它是有道理的。在開發java spring mvc應用程序時,我遇到了同樣的問題。當web.xml首先讀取並使用spring url映射時,角度路由就被它隱藏了。 –