2015-12-24 82 views
0

即使在打印出版本歷史記錄時,我的離子後退按鈕也不會執行任何操作,但是,當我打印出版本歷史記錄時,它會顯示後視圖。由於某些原因,$ionicHistory.enabledBack()返回false,即使後視圖存在,後視圖和當前視圖具有相同的ID。有誰知道如何解決這個問題?即使存在ionicHistory後視圖,離子後退按鈕也不起作用

下面是控制檯的快照。

+0

你有沒有在你的狀態變化做這樣的事情'disableBack'? – Mavlarn

+0

不是我的知識..除非它是一個默認設置,但文檔說「disableBack:下一個視圖應該忘記其後視圖,並將其設置爲null」,但在這種情況下,我的背視圖不是null,所以我不知道它是什麼不工作 –

+0

'$ state.go(backview);' – Mavlarn

回答

0
  1. 使用ui-router嵌套視圖創建國家將替換HTML的標籤ion-nav-view
  2. 使用ion-view而不是ion-nav-view,在模板html內部爲每個嵌套視圖。

實施例:

Parent (Nav) View HTML

<ion-nav-view name="navView"></ion-nav-view> 

Nested View Level 1 HTML

<ion-view view-title="Nested View Level 1"> 
    <ion-content></ion-content> 
</ion-view> 

Nested View Level 2 HTML

<ion-view view-title="Nested View Level 2"> 
    <ion-content></ion-content> 
</ion-view> 

ui-router

$stateProvider 
.state('app.navView', { 
    url: '/nav-view', 
    views: { 
    'menuContent': { 
     templateUrl: 'app/navView.html', 
     controller: 'NavViewCtrl as vm' 
    } 
    } 
}) 
.state('app.nestedViewL1', { 
     url: '/nested-view-L1', 
     views: { 
     'navView': { 
      templateUrl: 'app/nestedViewL1.html', 
      controller: 'NestedView1CtrL1 as vm' 
     } 
     } 
    }) 
.state('app.nestedViewL2', { 
     url: '/nested-view-L2', 
      views: { 
      'navView': { 
       templateUrl: 'app/nestedViewL2.html', 
       controller: 'NestedViewL2Ctrl as vm' 
      } 
      } 
     })