画面サイズがAngular 2を使用して768ピクセル幅未満の場合にのみ使用(クリック)する最良の方法は何ですか? (クリック)= "isClassVisible = !isClassVisible; " が好きですが、 * ngIf = "screenWidth < 769のようにしてください。{(クリック)=" isClassVisible =!isClassVisible; "}" 角度2でこれを行う方法がわかりません。有効ではないことが分かります。基本的に、セカンダリドロップダウンを持つnavアイテムは、デスクトップ上でホバリング時に展開し、マウスが離れると縮小します。モバイルでは、ナビゲーションアイテムをクリックして開くことができますが、再びクリックすると閉じることができます。私はそれを行うことができますが、私はどのようにクリックイベントを応答モードで見えるようにするかを理解できません。クリックイベントを角度2の* ngIfにラップする
0
A
答えて
0
あなたは実際には2つのアプローチがあります。
1)2つの別々の要素は、クリックイベントに1つずつなしを作成します。次に、特定のメディアクエリを有効にしたクラスを各要素に追加します。画面が< 768pxのときに非表示になり、もう1つは非表示になります。画面が768px
2)onclickイベントでは、 ng-click式の値を設定します。あなたのコントローラのこの関数では、(window.innerWidth)のようなものを使ってウィンドウオブジェクトから画面サイズを確認するようなことができます。これは時々面倒なことがあるので、たくさんのテストをしなければなりません。
技術的にはマークアップの繰り返しがありますが、そのほうが簡単です。
0
@Component({
selector: 'clicable'
, template: `
<div [clickIf]="clickIf" (value)="val = $event">click on me</div>
Width: <input [(ngModel)]="width">
value:
<div>{{val}}</div>
`
})
export class ClickableComponent {
clickIf
width = 200;
constructor() {
this.clickIf = obs => obs.filter(value => this.width > 100);
}
setWidth(width: number) {
this.width = +width;
}
}
let id = 0;
@Directive({
selector: '[clickIf]'
})
export class ClickIfDirective {
@Input() clickIf;
@Output() value = new EventEmitter();
@HostListener('click') click() {
Observable.of(1).let(this.clickIf).subscribe(val => this.value.next(id++));
}
}
関連する問題
- 1. 角度2 * ngIf
- 2. 角度2+ ngIfページ
- 3. 角度2のNgIFアナログ
- 4. 角度2 * ngIf true - >レンダリングボタン
- 5. 角度2 ngIf選択ボックス
- 6. 角度2ストップのクリックイベントの伝播
- 7. 角度2ツリーコンポーネントのクリックイベント
- 8. 角度2を手動で現在ngIf
- 9. 2角度:* ngIf - テンプレートがエラーを解析
- 10. 角度2 ngIf予期しないトークン#
- 11. async http.getデータリクエストに* ngIfを使用する方法 - 角度2
- 12. 角2 ngIfとngFor
- 13. ExpressionChangedAfterItHasBeenCheckedError。角2(5)* ngIf
- 14. クリックイベントhidde 2のコンポーネント角4
- 15. 角度2 ngIfとngの組み合わせについて
- 16. 角度 - テーブルの特定の行に* ngIfを使って* ngIfを使用する
- 17. 角度2/4でクリックイベントにオブジェクトを表示する方法は?
- 18. observableにラップされた約束エラーをキャッチする - 角度2
- 19. 角度2のクリックイベントにアイテムデータを渡す方法は?
- 20. 角度1の角度2+
- 21. 条件に基づいてCSSクラスプロパティを変更する(角度2のngIf)
- 22. 角度2 GoogleマップマーカーのクリックイベントDOMのdivの外観をトリガー
- 23. 角度2で例外を投げ、角度でviewWrappedDebugErrorをラップします。
- 24. 角度2 - ngIf切片の変更属性
- 25. 角度2のクリックイベントからオブジェクトにオブジェクトをロード
- 26. リーフレットマーカーのクリックイベントが角度2で動作する
- 27. *角度2
- 28. 角度2&4:NgIf/elseウィンドウロード時に指示を表示する条件
- 29. 角2 - クリックイベントのファイルをダウンロード
- 30. 角度2:エラー
最初の方法は私の最初のアプローチでもあり、角度2 – FoffySkrimshaw