Angular でのコンポーネントの相互作用の詳細な説明
この記事では、Angular コンポーネントの相互作用について詳しく説明します。一定の参考値があるので、困っている友達が参考になれば幸いです。
Angular コンポーネントの相互作用
コンポーネントの相互作用: コンポーネント通信により、2 つ以上のコンポーネント間で情報を共有できます。 。
使用シナリオ: 特定の機能が複数のコンポーネントで使用される場合、特定の機能をサブコンポーネントにカプセル化し、特定のタスクまたはワークフローをサブコンポーネントで処理できます。
対話メソッド:
- メソッド 1:
@Input
および@Output
デコレータを介して対話します。 - 方法 2:
service
を通じて対話します。
[関連する推奨事項: "angular チュートリアル "]
親コンポーネントから子コンポーネントにデータを転送する
入力タイプを介してデータを転送するバインディングは、親コンポーネントから子コンポーネントにデータを渡します。
input プロパティは、@Input デコレータで設定可能なプロパティです。
プロパティ バインディングを介してバインドされると、値がこのプロパティに「流入」します。
いくつかのコード例は次のとおりです:
import { Component, Input } from '@angular/core'; @Component({ selector: 'app-selector', template: ` // 模板代码 ` }) export class TestComponent { @Input() hero: Hero; @Input('master') masterName: string; }
上の例には 2 つの入力属性が含まれており、2 番目の @Input はサブコンポーネントの属性名 masterName のエイリアス マスターを指定します。
親コンポーネント内の子コンポーネントを参照します。いくつかのコード例は次のとおりです:
<app-hero-child *ngFor="let hero of heroes" [hero] = "hero" [master] = "master"> </app-hero-child>
入力属性値の変更をリッスンする
(1) setter メソッド
入力属性の setter() メソッドを使用して、親コンポーネントの値の変更をインターセプトし、アクションを実行します。
いくつかのコード例は次のとおりです。
export class TestComponent { @Input() set name(name: String) { // 逻辑处理 } }
(2) ngOnChanges() メソッドを使用する
OnChanges ライフサイクル フック インターフェイスの ngOnChanges() メソッドを使用して監視します。入力属性値の変更と応答。
注: 複数の対話型入力プロパティを監視する必要がある場合、プロパティの setter メソッドを使用するよりもこの方法の方が適切です。
import { Component, Input, OnChanges, SimpleChange } from '@angular/core'; @Component({ selector: 'app-version-child', template: ` // 模板代码 ` }) export class ChildComponent implements OnChanges { @Input() major: number; @Input() minor: number; ngOnChanges(changes: { [propKey: string]: SimpleChange }) { for (let propName in changes) { // propName为输入属性的名字 let changedProp = changes[propName]; // changedProp为SimpleChange对象 // 其它代码 } } }
子コンポーネントの @angular/core から入力、OnChanges、および SimpleChange をインポートします。 子コンポーネントの EventEmitter プロパティは出力プロパティであり、通常は @Output デコレータが付いています。 ——Angular コンポーネント間の相互作用 このサービス インスタンスのスコープは、親コンポーネントとその子コンポーネントに制限されます。このコンポーネント サブツリーの外側にあるコンポーネントは、サービスにアクセスしたり、サービスと通信したりできません。 Angular コンポーネントのインタラクションに関連する部分を参照してください詳細プログラミング関連の知識については、 以上がAngular でのコンポーネントの相互作用の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。/**
* Represents a basic change from a previous to a new value for a single
* property on a directive instance. Passed as a value in a
* {@link SimpleChanges} object to the `ngOnChanges` hook.
*
* @see `OnChanges`
*
* @publicApi
*/
export declare class SimpleChange {
previousValue: any;
currentValue: any;
firstChange: boolean;
constructor(previousValue: any, currentValue: any, firstChange: boolean);
/**
* Check whether the new value is the first value assigned.
*/
isFirstChange(): boolean;
}
親コンポーネントは子コンポーネントのイベントをリッスンします
子コンポーネントは EventEmitter プロパティを公開します。イベントが発生すると、子コンポーネントはこのプロパティを使用してエミット (上方への排出) )イベント。親コンポーネントはこのイベント プロパティにバインドされ、イベントが発生すると応答します。
親コンポーネントとその子コンポーネントは、このサービスを使用して同じサービスを共有します。コンポーネント ファミリ内の双方向通信。
詳細なドキュメントについては、

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









この記事では、Angular の学習を継続し、Angular のメタデータとデコレータを理解し、それらの使用法を簡単に理解します。

Angular.js は、動的アプリケーションを作成するための無料でアクセスできる JavaScript プラットフォームです。 HTML の構文をテンプレート言語として拡張することで、アプリケーションのさまざまな側面を迅速かつ明確に表現できます。 Angular.js は、コードの作成、更新、テストに役立つさまざまなツールを提供します。さらに、ルーティングやフォーム管理などの多くの機能も提供します。このガイドでは、Ubuntu24 に Angular をインストールする方法について説明します。まず、Node.js をインストールする必要があります。 Node.js は、ChromeV8 エンジンに基づく JavaScript 実行環境で、サーバー側で JavaScript コードを実行できます。ウブにいるために

この記事では、Angular のステートマネージャー NgRx について深く理解し、NgRx の使用方法を紹介します。

Angular Universal をご存知ですか?これは、Web サイトがより優れた SEO サポートを提供するのに役立ちます。

Angularでモナコエディタを使用するにはどうすればよいですか?以下の記事は、最近業務で使用したangularでのmonaco-editorの使い方を記録したものですので、皆様のお役に立てれば幸いです。

この記事では、Angular の実践的な経験を共有し、angualr と ng-zorro を組み合わせてバックエンド システムを迅速に開発する方法を学びます。

インターネットの急速な発展に伴い、フロントエンド開発テクノロジーも常に改善され、反復されています。 PHP と Angular は、フロントエンド開発で広く使用されている 2 つのテクノロジーです。 PHP は、フォームの処理、動的ページの生成、アクセス許可の管理などのタスクを処理できるサーバー側スクリプト言語です。 Angular は、単一ページ アプリケーションの開発やコンポーネント化された Web アプリケーションの構築に使用できる JavaScript フレームワークです。この記事では、PHPとAngularをフロントエンド開発に使用する方法と、それらを組み合わせる方法を紹介します。

この記事では、Angular の独立コンポーネント、Angular で独立コンポーネントを作成する方法、および既存のモジュールを独立コンポーネントにインポートする方法について説明します。
