2017-06-27 3 views
1

は、私がbuttontooltipを持っていると言う、と私は、ツールチップの代わりに携帯用のボタンのテキストラベルを非表示にしています:特定の画面サイズで、角度材料ツールチップを無効にするにはどうすればよいですか?

<button md-button mdTooltip="Neat tooltip message" [mdTooltipDisabled]=" ??? "> 
    <md-icon>neat_icon</md-icon> <span fxShow.xs="false">Neat Button Label</span> 
</button> 

私は例えば、gt.xsの際にツールチップを無効にするにはどうすればよいですか?現在のサイズ範囲にアクセスする方法が必要ですが、見つけられません。

参照@angular/flex-layoutから

+0

「window.innerWidth <300」を試しましたか? – wannadream

+0

マークアップに明示的にブレークポイントを設定する必要はないと思っています。彼らはフレックスサービスから利用可能でなければなりません。 – isherwood

答えて

3

ObservableMediaMediaChangeは、現在の画面サイズを返しobservablesubscribeに使用することができます。 demoコードで

、私はsmxsのためのツールチップを非表示にしています。

component.ts:

import {Component} from '@angular/core'; 
import {MediaChange, ObservableMedia} from "@angular/flex-layout"; 

@Component({ 
    selector: 'tooltip-position-example', 
    templateUrl: 'tooltip-position-example.html', 
    styleUrls: ['tooltip-position-example.css'], 
}) 

export class TooltipPositionExample { 

    disableTooltip: boolean = false; 

    constructor(media: ObservableMedia) { 
     media.asObservable() 
     .subscribe((change: MediaChange) => { 
     console.log(change.mqAlias); 
      if(change.mqAlias == 'sm' || change.mqAlias == 'xs'){ 
      this.disableTooltip = true; 
      } 
      else{ 
      this.disableTooltip = false; 
      } 
     }); 
    } 
} 

HTML:

<button md-button class="example-tooltip-host" mdTooltip="Neat tooltip message" 
     mdTooltipPosition="above" 
     [mdTooltipDisabled]="disableTooltip"> 
    Tooltip Test Button 
</button> 

flex-layout ObservableMedia Doc

・ホープ、このことができます!

+0

これは本当にうまく見えます。それらの文書はどこで見つかりましたか?私は戻って、運がないそのページへの参照を探しました。 – isherwood

+0

https://github.com/angular/flex-layout/wiki/ObservableMedia このリンクから、私は2番目の例 'ObservableMedia :: asObservable()' – Nehal

+0

AM docsには参照がありません。フレックスレイアウトのドキュメント内でヒントを検索しました。 – Nehal

関連する問題