Ionic / Angular:管理后退按钮的自定义导航历史记录

时间:2016-08-03 12:23:32

标签: angularjs ionic-framework angular-ui-router

<user />angular.component是用户的个人资料页面,其中包含4个标签页,如下所示:

enter image description here

使用ui-router我会根据tab ion-tabs / details / followers / {following / {photos中选定的home.user.details显示不同的模板{1}})

我的问题是:当我点击后退按钮时,它也会在子视图(home.user.followershome,...)之间导航,而不是直接转到上一个视图(例如home.user

我能想到的最佳解决方案是将之前的视图名称作为参数传递给prev,这样我就可以获得正确的<user />视图,但我无法在{{1}中看到它控制器

.state('home.user', {
  url: '/user/:id',
  abstract: false,
  cache: true,
  template: '<user></user>',
  resolve: {
    id: function($stateParams) {
      return $stateParams.id;
    },
    prev: function($ionicHistory) {
      return $ionicHistory.currentView()
    }
  }
})
.state('home.user.details', {
  url: '/details',
  templateUrl: 'template/user.details.html'
})

.state('home.user.followers', {
  url: '/followers',
  templateUrl: 'template/user.followers.html'
})

// Same for home.user.following and home.user.photos
  • 如何将prev传递给<user />
  • 有没有更好的方法来解决我的导航问题?

修改

这些是<user />模板中的标签:

    <ion-tabs>
      <ion-tab ui-sref="home.user.details">
      </ion-tab>
      <ion-tab ui-sref="home.user.followers">
      </ion-tab>
    </ion-tabs>
    <ion-nav-view class="inner-view"></ion-nav-view>

0 个答案:

没有答案