这是我的主视图之外的“子集”视图,在该视图中有一个标签栏(地图,市场和图表)。单击它们时,它们会通过UiSref在此标签中正确输出。
<div ui-view name="inception2"></div>
这3个视图在我的路线文件中定义,如下所示。
如何将uiViewName中的视图默认为tsView2?目前,我需要单击以进行路由。再次,我设置了一个路由器文件,该文件确实具有抽象状态和所有状态-这仅用于现有项目中的简单制表练习。谢谢!
.state('tsView1', {
views: {
'inception2': {
templateUrl: 'client/templates/tsVview1.html'
}
}
})
.state('tsView2', {
views: {
'inception2': {
templateUrl: 'client/templates/tsView2.html'
}
}
})
.state('tsView3', {
views: {
'inception2': {
templateUrl: 'client/templates/tsView3'
}
}
})
您可以尝试此解决方案
使用AngularJS中的UI-Router将状态重定向到默认子状态
介绍一个小型引擎,阅读设置 redirectTo
app.run(['$rootScope', '$state', function($rootScope, $state) {
$rootScope.$on('$stateChangeStart', function(evt, to, params) {
if (to.redirectTo) {
evt.preventDefault();
$state.go(to.redirectTo, params)
}
});
}]);
然后在其父级上应用默认子级
.state('main', {
redirectTo: 'tsView2',
...
}
.state('tsView2', {
parent: 'main'
...
}
换句话说,这要求tsViews必须是子级...但是我想它应该已经是真的
这是我主视图之外的“子集”视图...
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句