2017-11-24 6 views
1

私は、アニメーションをうまく扱えない古いシステムでIonicアプリを実行しているため、無効にしようとしています。Ionic 3でモーダルアニメーションを無効にするにはどうすればよいですか?

私は、モーダルを作成するときにoptsを設定しようとしました:

{ 
    cssClass: 'plain-modal', 
    enableBackdropDismiss: false, 
    enterAnimation: 'no-animation', 
    leaveAnimation: 'no-animation', 
    showBackdrop: true 
} 

no-animationがここに影響を与えないようです。文字通りDOM要素には適用されません。 それとも?

診断ますが、私は、モーダルを開閉されようとしているときイオンが.contentにインラインCSSを適用することに気付きました:

transform: translateX(100%); 
will-change: transform, -webkit-transform; 
transition-duration: 500ms; 
transition-timing-function: cubic-bezier(0.36, 0.66, 0.04, 1); 

ので、私はinitial !importantを使用して、それらを上書きしようとした:

.show-page.plain-modal { 
    > ion-backdrop { 
     opacity: 0.5; // Nothing is displayed if I don't do this 
    } 

    > .modal-wrapper { 
     opacity: 1; // Again nothing is displayed if I don't do this 

     > .ion-page { 
      > .content { 
       // Override Ionic animation styles 
       transform: initial !important; 
       will-change: initial !important; 
       transition-duration: initial !important; 
       transition-timing-function: initial !important; 
      } 
     } 
    } 
} 

今や、モーダルはアニメーションなしで表示されます。問題が起きます。viewController.dismiss()を使用してモーダルを閉じると何も起こりません。ただし、閉じるボタンを繰り返しクリックするとモーダルが閉じます。 なぜですか?

答えて

2

あなたは、すべてのアニメーションを無効にする必要がある場合:

app.module.ts私が探していたまさに

IonicModule.forRoot(MyApp, { animate: false }) 
+1

!ありがとうございました! – Eric

+0

誰かが1つのモーダルの解を知っていましたか?私はモーダルショーでアニメーションを無効にしたい。ありがとう – NoBody

+0

モーダルが解除されているときだけアニメーションを無効にすることはできますか? – hkg328

関連する問題