angularjs – 离子角度多个嵌套和抽象状态

前端之家收集整理的这篇文章主要介绍了angularjs – 离子角度多个嵌套和抽象状态前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在研究一个需要2个具有嵌套状态的抽象状态的应用程序,下面是示例配置

$stateProvider
 .state('app',{
  url: "/app",abstract: true,templateUrl: "templates/menu.html",controller: "AppController"
 })
 .state('app.screenList',{
  url: "/app/screenList",views: {
   'menuContent': {
   templateUrl: "templates/screenList.html",controller: "ScreenListController"
   }
  }
 })
 .state('app.screen1',{
  url: "/app/screen1",views: {
   'menuContent': {
   templateUrl: "templates/screen1.html",controller: "Screen1Controller"
   }
  }
 })
 .state('app.subapp',{
  url: "/app/subapp",views: {
   'menuContent': {
   templateUrl: "templates/subapp.html",controller: "SubAppController"
   }
  }
 })
.state('app.subapp.screen1',{
  url: "/app/subapp/screen1",views: {
   'subappContent': {
   templateUrl: "templates/subappscreen1.html",controller: "SubAppScreen1Controller"
   }
  }
 })

screenList状态显示要选择的屏幕列表.当发生以下导航时,一切正常

screenList> screen1按返回键,然后按subapp.screen1

在这个阶段按回来工作.

有趣的是,当我尝试执行以下导航时,后退停止响应并且没有任何反应.

screenList> screen1按返回键,然后按subapp.screen1按返回键,然后再按subapp.screen1(在此阶段按后退键无效.即使应用程序也不退出.)

我完全无能为力,为什么它会发生,我得出的唯一结论是,如果我连续尝试进入subapp.screen1,问题就出现了.如果我继续在subapp.screen1和screen1之间切换,一切正常.

我希望无论状态如何切换,后退键都应该响应.

解决方法

基于 this post,我终于让事情奏效了.

在tabs.html中,我声明了一个这样的标签

<ion-tab title="ServOOps Mobile" icon="ion-person-stalker" ui-sref="app.tabs.external-index">
<ion-nav-view name="tab-servicos"></ion-nav-view>

在app.js中,我这样说:

.state('app',{
    url: '/app',templateUrl: 'templates/menu.html',controller: 'AppCtrl'
})

  .state('app.tabs',{
  url: "/tabs",views: {
    'menuContent': {
      templateUrl: "templates/tabs.html"
    }
  }
})

.state('app.tabs.external-index',{
    url: '/external-index',views: {
        'menuContent': {
            templateUrl: 'templates/external-index.html',controller: 'ExternalIndexCtrl'
        },'tab-servicos': {
          templateUrl: 'templates/external-index.html',controller: 'ExternalIndexCtrl'
        }
    }
})

这很好用.现在我在这个页面上有我的侧边菜单和我的标签.

您必须为其他选项卡重播此内容.

请记住,在此我将外部索引链接到选项卡,所以现在,页面链接将是#/ app / tabs / external-index.html.

猜你在找的Angularjs相关文章