В $ stateProvider моего приложения я определяю все состояния приложения:
+ function () {
"use strict";
function cataneiConfig($stateProvider, $urlRouterProvider, $httpProvider) {
$stateProvider
.state('login', {
url: '/login',
templateUrl: 'views/login.html',
controller: 'loginCtrl as $ctrl'
})
.state('layout', {
url: '/layout',
views:{
'':{//Default layout
templateUrl: 'views/layout.html',
controller: 'layoutCtrl as $ctrl'
},
'list@layout':{
templateUrl: 'views/list.html',
controller: 'listPersonaCtrl as $ctrl'
},
'form@layout': {
templateUrl: 'views/form.html',
controller:'createPersonaCtrl as $ctrl'
},
'edit@layout':{
params: { obj: null },
templateUrl: 'views/edit.html',
controller:'editPersonaCtrl as $ctrl'
}
},
})
.state('error', {
url: '/error',
templateUrl: 'views/error.html'
});
$urlRouterProvider.otherwise('login');
}
cataneiConfig.$inject = [
"$stateProvider",
"$urlRouterProvider",
"$httpProvider",
];
angular
.module("appTareas")
.config(cataneiConfig);
}();
С login controller ===> $ state.go ('layout') работает и перенаправляет на layout.html .... как и ожидалось .
Из layout.html ===> <ui-view ='list'/>
правильно отображает list.html в состоянии layout
.
Из список контроллер ===> $ state.go ('form') или $ state.go ('edit') , не Работа. В list.html <a ui-sref='form'/>
не работает.
Как я могу перенаправить между различными представлениями и их контроллерами?