Angular では、Material コンポーネント ライブラリを開発すると同時に、公式チームが Angular の世界で有名な CDK であるコンポーネント開発キットも開発しました。このツールキットは、フロントエンド開発に共通する多くの機能を提供します。よく知られている Angular コンポーネント ライブラリのほぼすべてがこの開発キットに依存しています。 ANT、PrimeNGなど。 この記事では主に CDK を使用し、CDK のオーバーレイ モジュールを使用してシンプルな Toast コンポーネントを実装します。 1. 環境設備cdkはAngularのデフォルトモジュールではないので、手動でインストールする必要があります app.module の cdk に OverlayModule を導入する '@angular/cdk/overlay' から OverlayModule をインポートします。 @Ngモジュール({ 宣言: [ アプリコンポーネント ]、 輸入: [ ブラウザモジュール、 オーバーレイモジュール ]、 プロバイダー: [], ブートストラップ: [AppComponent] }) クラス AppModule をエクスポートします { } 2. ToastコンポーネントとToastServiceを作成する
2.1 Toastコンポーネントとスタイルを記述するトーストコンポーネント <div class="q-toast"> <div class="q-toast-mask"></div> <p class="q-toast-msg">{{メッセージ}}</p> </div> .q-トースト{ パディング: .2rem .5rem; 幅: 5rem; 位置: 相対的; ディスプレイ: フレックス; flex-direction: 行; アイテムの位置を中央揃えにします。 コンテンツの中央揃え: 中央; .q-トーストマスク{ 位置: 絶対; 上: 0; 左: 0; 右: 0; 下部: 0; 背景色: #000; 不透明度: .8; 境界線の半径: 2rem; } .q-トーストメッセージ{ 色: 白; zインデックス: 999; } } トーストサービス '@angular/cdk/overlay' から Overlay、OverlayConfig をインポートします。 '@angular/cdk/portal' から ComponentPortal をインポートします。 '@angular/core' から { Injectable、InjectionToken、Injector } をインポートします。 './toast.component' から ToastComponent をインポートします。 @Injectable({ 提供元: 'root' }) クラス ToastService をエクスポートします。 コンストラクター(プライベートオーバーレイ: Overlay) { } 表示(メッセージ: 文字列) { 定数config = 新しいOverlayConfig(); 定数positionStrategy = this.overlay.position() .global().centerVertically().centerHorizontally(); config.positionStrategy を設定します。 overlayRef を this.overlay.create(config) とします。 const inject = Injector.create({ プロバイダー: { 提供: Toast_Ref、 使用値:オーバーレイ参照 }, { 提供: Toast_Msg、 使用値:メッセージ } ] }) console.log(inject.get<文字列>(Toast_Ref)) ComponentPortal を新しいものに置き換えます (ToastComponent、null、inject); overlayRef.attach(部分) タイムアウトを設定する(() => { オーバーレイRef.デタッチ() オーバーレイRef.dispose(); }, 2000); } } エクスポート const Toast_Ref = new InjectionToken<{}>('Toast_Ref'); エクスポート const Toast_Msg = new InjectionToken<{}>('Toast_Msg'); トーストの使用 Service を記述すると、Angular はデフォルトでそれをルート モジュールに挿入します。Toast をポップアップする必要があるコンポーネントの構築メソッドに、対応する ToastService を記述するだけで、正常に実行されます。 クラスAppComponentをエクスポートします。 コンストラクター(プライベートトースト:ToastService) { } テスト() { this.toast.Show('hello cdk!') } } GIF効果画像 Angular CDK を使用してサービス ポップアップ Toast コンポーネントを実装する方法についての記事はこれで終わりです。Angular CDK による Toast コンポーネントの実装の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Linuxがすべてのコマンドをサポートしていない問題の解決策
>>: MySQL の最初のインストールが成功した後にパスワードを初期化する手順
目次インストールソフトウェア管理匿名アクセスモード設定ファイルを変更するクライアントがサーバーにログ...
この記事では、例を挙げて MySQL のマルチテーブル クエリについて説明します。ご参考までに、詳細...
1. RPMバージョンのインストールデータベースの他のバージョンがあるかどうかを確認し、ある場合は完...
目次序文1. GMT GMTとはGMTの歴史2. UTC UTCとはUTC は次の 2 つの部分で構...
今日システムを再インストールした後、コンピューターに mysql を再インストールし、ZIP ファイ...
まず、例を挙げてみましょう(読みたくない場合は、以下の要約だけ読んでください)。 order_typ...
クイックスタートガイドForeman インストーラーは、完全に機能する Foreman セットアップ...
目次1. Dockerをビルドする2. コンテナに入る3. 設定ファイルを変更する4. Kafkaを...
目次序文 👀リサーチを始めましょう🐱🏍オリジナル🧶 indexOf を使用した元の方法の最適化 ✍...
kubectl の紹介kubectl は、k8s クラスターを操作するためのコマンドライン ツールで...
この記事では、centos7 システムの nginx サーバーの下に phalcon 環境を構築する...
目次1. 左端接頭辞原則2. 表に戻る3. インデックスプッシュダウン序文:インデックス プッシュダ...
Zabbix は Linux システムのサービス ユニットを監視するためのルールを自動的に検出します...
セキュアターミナルMobaXterm_Personalをダウンロードまず、安全なターミナルをダウンロ...
1. Windows 版の Docker をインストールしたら、Docker クイックスタート ター...