【问题标题】:Ionic inner-tabs routing离子内部选项卡路由
【发布时间】:2015-06-17 15:19:05
【问题描述】:

当您在 ionic 中创建基本选项卡项目时,您会获得选项卡、“状态”、“聊天”、“朋友”、“帐户”和“徽章”。现在,如果我想在 Dashboard-Status 视图上添加一个链接,将我路由到 Friends 选项卡下的子导航,我可以使用以下方法:

<a ui-sref='tab.friend-detail'>

但是,如果我这样做,我会丢失使用“朋友”选项卡导航到同一视图时通常会得到的后退箭头。我使用的解决方法是为“主页”创建一个使用相同控制器和视图的子导航。像这样:

  .state('tab.home-friend-detail', {
  url: 'home/friend/:friendId',
  views: {
    'tab-friends': {
      templateUrl: 'templates/friend-detail.html',
      controller: 'FriendDetailCtrl'
    }
  }
})

并在链接中指向该状态。有没有办法从任何视图进入子导航状态并保持让我回到父状态的后退按钮/箭头?如果这没有意义,请告诉我,我会尽力澄清。

【问题讨论】:

  • 嗯,你为什么要这样做?当您转到朋友详细信息时,您会在朋友中传递所选朋友的 ID。当您单击状态视图中的链接时,您想访问哪个“id”?
  • @novalain 这只是一个例子。因为,为了争论,假设我在“主页”视图上有一个链接,该链接链接到 Friend #3 的详细信息。我的问题更广泛,关于如何在没有重复路由解决方法的情况下完成我想要的。

标签: angular-ui-router ionic-framework


【解决方案1】:

我认为当您直接进入嵌套视图状态时,不可能保留后退按钮,因为选项卡会单独保留自己的历史堆栈。

但是,您可以通过使用 $ionicHistory 并在控制器中调用 $ionicHistory.goBack(); 来返回任何视图的父状态。然而,这意味着您必须在您的朋友详细信息页面中创建一个自定义后退按钮。

【讨论】:

  • 很遗憾,我很害怕。我认为我们没有按预期使用选项卡路由,但这不是我的决定。
猜你喜欢
  • 1970-01-01
  • 2017-01-19
  • 2020-10-09
  • 2020-01-20
  • 2016-04-27
  • 1970-01-01
  • 2014-05-29
  • 1970-01-01
  • 2016-07-30
相关资源
最近更新 更多