2017-01-24 4 views
0

私はIonicに基づいてハイブリッドアプリケーションを開発しました。 は、今、私たちは、私は彼に同じアプリを販売することはできませんから、同じ機能を必要としますが、新しいクライアントが、私は私のアプリのLを変更する必要が& F.動的タブナビゲーション

状態は、サービスの応答に基づいてdinamicallyロードされています。それはうまくいきますが、私のチームでは、サイドメニューからタブナビゲーションに変更することを決めました。ここに問題があります。

私たちは状態定義とhtmlをそのまま残したいと思っています。将来、新しい顧客が来ると、HTMLを変更せずにアプリケーションをパラメータ化することができます。とにかく

、here's動的な状態の定義:

.state('menu.generico', { 
       url: "/trans/:capp/:cmod/:ctr", 
       resolve: { 
        someResolve: function($stateParams,$ionicHistory,$q, CashModals){ 
       }, 
       views: { 
        'menu-generico': { 
         templateProvider: function(){ 
         } 
        } 
       } 
      }); 

はほかに、私は、メニューの作成を担当していディレクティブを持っています。 サイドバーメニューやタブナビゲーションが必要な場合は教えてください。 とにかく、それは返すのタブ構造のようなものです:私は、ナビゲーションが、それはスレッドの失っアプリをナビゲート起動したときに、そう

<cargar-menu-mobile> 
    <ion-nav-bar class="bar-positive nav-bar-container" nav-bar-transition="ios" nav-bar-direction="back" nav-swipe=""> 
     <ion-nav-back-button class="hide" data-ng-click="myGoBack()"></ion-nav-back-button> 
     <ion-nav-buttons side="right" class="hide"></ion-nav-buttons> 
     <ion-tabs class="tabs-positive tabs-icon-top"> 
      <ion-tab title="Posición" icon="ion-card" ui-sref="menu.generico" ng-click="tabChanged(1)"> 
       <ion-nav-view name="menu-generico" cache-view="false"></ion-nav-view> 
      </ion-tab> 
     </ion-tabs> 
    </ion-nav-bar> 
</cargar-menu-mobile> 

。これは、タブのビュー内をしばらく移動してから最初のタブ(menu-generico)を押すと、戻るボタンがアクティブになりますが、タブがルート状態であるため、アクティブ化したくありません。

アイデア? ありがとう!

答えて

0

あなたは、ボタンをバックたくない場合は、

<ion-nav-back-button class="hide" data-ng-click="myGoBack()"></ion-nav-back-button> 

は、この行を削除してください。 Ionicはタブビューの個別の履歴を保持します。私はようやく私の指示にtabChanged関数にこれらの行を追加

https://forum.ionicframework.com/t/keep-main-header-bar-disable-back-button-on/19868

+0

すべてのタブのサブ状態がmenu.genericoを通過することです。ですから、menu.genericoに属するタブに移動すると、ルートタブになったときに戻るボタンが表示されます。私は説明していますか?それは私が戻ってボタンを望んでいないわけではありません – Pablo

+0

私はちょっと "リセット"ナビゲーションフローを – Pablo

+0

の方法が必要です からvarのインデックスを取得することができます 'var index = $ ionicTabsDelegate.selectedIndex();' 0の場合は、戻るボタンを無効にします。 '$ ionicNavBarDelegate.showBackButton(false);' – Stallion

0

、それについての詳細を知るために、次のスレッドを経る:

$ionicHistory.nextViewOptions({ 
     historyRoot: true 
}); 

ので、この方法は、各タブはrootです。

これで、対応するタブを有効にするために、各状態が属するタブを認識するだけで済みます。

誰かが役に立つと思っています。

関連する問題