我在第一次尝试lib,它看起来像嵌套状态不按预期工作。嵌套状态不适用于Angular UI路由器
的状态:
- 在3 UI-视图的
home
状态显示内容(顶部,左侧和内容) - 的
home.splash
状态必须显示相同的UI的视图和一个新一个(模态)。希望继承UI的意见不应该因为它们已经被加载眼下更新DOM ...
,我看到了URL变化,这里是我的控制台:
这里是的的jsfiddle链接: http://jsfiddle.net/ffv0e2v7/3/
这里是代码:
'use strict';
angular.module('myApp', ['ui.router'])
.config(['$stateProvider', '$urlRouterProvider', function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/home');
$stateProvider
.state('home', {
url: '/home',
views: {
top : { templateUrl: 'views/ui/top.html' },
left : { templateUrl: 'views/ui/left.html' },
content : { templateUrl: 'views/ui/content.html' }
}
})
.state('home.splash', {
url : '/splash',
views: {
/*top : { templateUrl: 'views/ui/top.html' },
left : { templateUrl: 'views/ui/left.html' },
content : { templateUrl: 'views/ui/content.html' },*/
modal : { templateUrl: 'views/modals/splash.html' }
}
});
}]);
<div ng-app="myApp">
<!-- Views -->
<div ui-view="top"></div>
<div ui-view="left"></div>
<div ui-view="content"></div>
<div ui-view="modal"></div>
<!-- Links -->
<a ui-sref="home.splash">Splash</a>
<a ui-sref="home">Home</a>
<!-- Templates -->
<script type="text/ng-template" id="views/ui/top.html">
<div>top.html</div>
</script>
<script type="text/ng-template" id="views/ui/left.html">
<div>left.html</div>
</script>
<script type="text/ng-template" id="views/ui/content.html">
<div>content.html</div>
</script>
<script type="text/ng-template" id="views/modals/splash.html">
<div>splash.html</div>
</script>
</div>
非常感谢你!我将奖励答案。