2017-04-01 40 views
2

我正在爲POC工作,我無法找到隱藏在這裏的任何愚蠢錯誤。我有一個裸機/基本的角應用程序,使用ui路由器。 Plunker可以在here找到。使用ui路由器的基本Angular應用不會加載登錄

在Chrome控制檯中,我可以看到我的app.module正在創建,但是登錄頁面從不出現。這是一個非常非常基本的應用程序,所以我認爲它一定是我錯過的簡單東西。有什麼建議麼?下面是一個快速示例:

config.js

(function() { 
'use strict' 
var app = angular.module('app.core'); 
app.config(AppRouter); 
AppRouter.$inject = ['$stateProvider', '$urlRouterProvider']; 

function AppRouter($stateProvider, $urlRouterProvider) { 
    $urlRouterProvider.otherwise('login'); 
    $stateProvider 
    .state('/', { 
     templateUrl: 'login.html', 
     controller: 'LoginController', 
     controllerAs: 'vm', 
    }) 
    .state('login', { 
     templateUrl: 'login.html', 
     controller: 'LoginController', 
     controllerAs: 'vm', 
    }); 
} 
})(); 

login.controller.js

(function() { 
'use strict'; 

var app = angular.module('app.login'); 

app.controller('LoginController', LoginController); 

LoginController.$inject = ['$location', '$filter', '$window', '$rootScope']; 

function LoginController($location, $filter, $window, $rootScope) { 
    var init = function() { 
    console.log('here'); 
    }; 

    init(); 
} 
})(); 

app.module.js

(function() { 
    var app = angular.module('app', ['app.core', 'app.login']); 
})(); 

login.module.js

(function(){ 
    'use strict' 
    var app = angular.module('app.login', ['app.core']); 
})(); 

core.module.js

(function(){ 
    'use strict' 
    var app = angular.module('app.core', ['ui.router']); 
})(); 

回答

1

它爲我工作幾年的變化(見分叉普拉克:https://plnkr.co/edit/D5AL8DTnqYI2g23wjE7W?p=preview):後

你忘了加載AngularJS(在<head></head之間)。 你忘了添加ng-app,我把它添加到身體上。 我做了一些變化,config.js

function AppRouter($stateProvider, $urlRouterProvider) { 
    $urlRouterProvider.otherwise('/login'); 
    $stateProvider 
     .state('/', { 
     templateUrl: 'login.html', 
     controller: 'LoginController', 
     controllerAs: 'vm', 
     }) 
     .state('login', { 
     url: '/login', 
     templateUrl: 'login.html', 
     controller: 'LoginController', 
     controllerAs: 'vm', 
     }); 
    } 

我添加urllogin狀態,我所做的更改到otherwise功能:我改變login/login事業需要的網址,不是國家的名字。 我想你過度配置你的應用程序有點(太多模塊),它使我很難閱讀,但這只是我的意見,坦率地說,也許這只是因爲我不經常使用模塊。嘗試將這些更改添加到您的Plunk中,如果它不起作用,請寫信,因爲我可能會意外跳過某些內容。

+1

完美的工作,謝謝。獲得的教訓 - 從小開始:) – NealR

+0

@NealR我很高興聽到它:) –