这是我的routeconfig文件
.state('results',{
redirectTo:'results.grid',
url: '/results/{searchobject:json}',
templateUrl: 'html/main_listing.html',
params:{
searchobject:null
}
})//Child state for results state
.state('results.grid',{
templateUrl: 'html/grid_listing.html'
})
//Child state for results state
.state('results.list',{
templateUrl: 'html/list_listing.html'
})
此代码位于.run函数
内$rootScope.$on('$stateChangeStart', function(evt, to, params) {
if (to.redirectTo) {
evt.preventDefault();
$state.go(to.redirectTo, {location: 'replace'})
}
});
$ state.go("结果",{searchobject:searchobject})默认情况下不加载网格状态。
但是在使用URL而没有传递params时,它的工作原理非常好。
我不明白为什么添加或删除url params会有什么不同?