[英]angular-ui-router only loads template but not controller not loaded
我嘗試將我的Angular應用程序從使用ngRoute遷移到uiRoute。 除控制器外,一切正常。 它們很簡單,不像ngRoute那樣加載,我不知道為什么。 正如我從uiRoute看到它應該像ngRoute一樣工作,但事實並非如此。 沒有異常拋出。 我也沒有找到類似我的類似配置的任何示例,盡管它非常簡單。 我回家有人可以告訴我控制器藏在哪里。
http://plnkr.co/edit/VGyi3AxgslgpvwBCTkXI?p=preview
因此對於ngRoute,控制器應該可以通過“主頁”訪問,但看起來它只是空的:(
;(function(angular) {
'use strict';
angular
.module('MainRouter', ['ui.router'])
.config(['$stateProvider', function($stateProvider) {
$stateProvider
.state('home', {
url: '',
views: {
"mainView": {
templateUrl: 'home.html'
}
},
controller: 'HomepageCtrl',
controllerAs: 'homepage'
});
}]);
})(angular);
當你在狀態定義中使用views
選項時, ui-router
引擎不會查找在狀態級別定義的templateUrl
和controller
,基本上你只需要從namedView
定義中提供controller
& templateUrl
值。 在您的情況下,您應該在mainView
定義對象中添加控制器。
碼
.config(['$stateProvider', function($stateProvider) {
$stateProvider
.state('home', {
url: '',
views: {
"mainView": {
templateUrl: 'home.html',
controller: 'HomepageCtrl',
controllerAs: 'homepage'
}
},
});
}]);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.