【发布时间】:2014-10-10 17:26:02
【问题描述】:
我在使用带有离子标签的 ui-router 时遇到问题。
当我尝试从单独的选项卡转换到嵌套在选项卡中的状态时,它似乎在 stateProvider 中解析它,就输入解析语句而言,但从未真正进入该状态。
适用的状态在这里:
.state('index', {
abstract: true,
templateUrl:'app/main.html',
controller: 'MainCtrl'
})
.state('index.got', {
url: "/got",
views: {
'got-tab': {
templateUrl: "app/got/main.html",
controller: 'GotCtrl'
}
}
})
.state('index.got.listing', {
url: "/listings/:id",
templateUrl: "app/got/listing/listing.html",
controller: "GotListingCtrl",
resolve: {
listing: function(Listing, $stateParams) {
return Listing.get({id: $stateParams.id});
}
},
})
.state('index.feed', {
url: "/feed",
views: {
'feed-tab': {
templateUrl: "app/home/feed/feed.html",
controller: 'FeedCtrl',
resolve: {
listings: function(CurrentUser) {
return CurrentUser.feed()
}
}
}
}
还有标签
<ion-tabs class="tabs-striped tabs-color-positive tabs-icon-top">
<ion-tab title="Got" ui-sref="index.got.listings">
<ion-nav-view name="got-tab"></ion-nav-view>
</ion-tab>
<ion-tab title="Home" ui-sref="index.feed">
<ion-nav-view name="feed-tab"></ion-nav-view>
</ion-tab>
</ion-tabs>
我对转移状态的调用是
var index = $state.get('index')
$state.transitionTo('.got.listing', {id: '1'}, {relative: index})
我认为问题是因为我正在处理嵌套名称视图,但任何帮助将不胜感激,谢谢
【问题讨论】:
-
对于任何感兴趣的人,在路由到我想要的最终状态之前,我最终预先路由到了指定的选项卡(用户不可见)。我确信有更好的方法可以做到这一点,但这仍然有效,只是多做一点工作。
标签: angular-ui-router ionic-framework