我一直試圖動態地填充我在$ stateProvider中配置的狀態的導航欄。當我嘗試獲取狀態名稱或url或任何其他屬性時,我得到未定義的,我一直在使用$ state.get(),但我找不到任何示例,如何解釋它如何使用迭代通過狀態
只是爲了清楚起見和示例讓使用波紋管的狀態,我需要能夠動態生成狀態名稱導航欄(主,家庭,約)
$stateProvider
.state('main', {
abstract: true,
templateUrl: 'app/states/main/main.html'
})
.state('home', {
url: '/',
templateUrl: 'app/states/main/home/home.html',
controller: 'HomeController',
controllerAs: 'home'
})
.state('about', {
url: '/about',
templateUrl: 'app/states/main/about/about.html',
controller: 'AboutController',
controllerAs: 'about'
})
看到控制器的執行情況可能是無稽之談
angular
.module('myapp')
.controller('NavBarController', NavBarController);
function NavBarController($scope, $state) {
var states = $state.get();
angular.forEach(states, function (value, key) {
// value returns [Object Object];
// key returns numbers from 0 to 3
console.log('get states ---- ')
});
}
其中狀態是從哪裏來的?如果是get()誰設置()的值? – Aravind