我开发的项目是使用ng-view来进行视图跳的,其中有一个/route页面需要点击页面上的子导航进行/:id跳转
现在的问题就是点击导航之后不希望它实现跳转,而是想在原来的页面上进行显示
试过iframe的ng-src嵌套,但是所请求到的页面会重新加载全部的页面,时间过长,要如何规定angular只请求我显示的这一页面?
或者使用ui-view来进行嵌套,但是index页面是使用ng-view的,所以在子页面上使用ui-view会报错,而且如果能实现嵌套的话,利用controller来写要如何实现?
angular原声的ng-view一个页面只能有一个吧,所以我觉得是不能嵌套ng-view的
建议全部换成ui-view来控制,这样就能嵌套view啦
ng-view 无法多级嵌套,要使用ui-view 就只能使用ui-view 不能混用因为有语法不一样的。还有就是建议先看ui-view的api
var routerApp = angular.module('routerApp',['ui.router','Module1','Module2']);
routerApp.run(function($rootScope,$state,$stateParams){
$rootScope.$state = $state;
$rootScope.$stateParams = $stateParams;
});
routerApp.config(function($stateProvider,$urlRouterProvider){
$urlRouterProvider.otherwise('/index');
$stateProvider
.state('index',{
url:'/index',
views:{
'':{
templateUrl:'tpls/home.html'
}
}
})
.state('nav',{
url :'/route/:id',
views :{
'': {
templateUrl: 'tpls/nav.html'
},
'route@nav':{
templateUrl: 'tpls/nav-child.html'
}
}
})
});