$on と $broadcast はどのようにして Angular でイベント通信を有効にしますか?

Mary-Kate Olsen
リリース: 2024-10-28 07:18:01
オリジナル
557 人が閲覧しました

How do $on and $broadcast Enable Event Communication in Angular?

Angular での $on および $broadcast によるイベント通信

Angular は、アプリケーション内のコンポーネントが通信できるようにする 2 つの基本的なイベント通信メソッド $on と $broadcast を提供します。お互いに。これらのメソッドがどのように機能するかを理解することは、Angular アプリケーションで効果的なイベント処理を行うために非常に重要です。

$broadcast
コントローラー内でイベントが発生したとき (footer.html 内の要素をクリックしたときなど) footerController は、$broadcast を使用してアプリケーションの他の部分にブロードキャストできます。このメソッドは、イベント名とオプションの引数をパラメーターとして受け取ります。

<code class="javascript">$rootScope.$broadcast('scanner-started');</code>
ログイン後にコピー

$on
他のコンポーネントは、$on を使用してこれらのイベントをサブスクライブできます。このメソッドはイベント名とコールバック関数をパラメータとして受け取ります。イベントがブロードキャストされると、コールバック関数がトリガーされ、$broadcast で渡された引数へのアクセスが提供されます。

<code class="javascript">$scope.$on('scanner-started', function(event, args) {

    // do what you want to do
});</code>
ログイン後にコピー


startScanner イベントを必要とする codeScannerController について考えてみましょう。コードのスキャンを開始します。 footerController は、要素がクリックされたときにこのイベントをトリガーできます。

<code class="javascript">// In footerController
$scope.startScanner = function() {

    $rootScope.$broadcast('scanner-started', { any: {} });
}

// In codeScannerController
$scope.$on('scanner-started', function(event, args) {

    var anything = args.any;
    // do what you want to do
});</code>
ログイン後にコピー

使用法
$on と $broadcast は、通常、異なるコンポーネント間の通信を容易にするために使用されます。コントローラー、サービス、ディレクティブ。これらにより、アプリケーション全体でイベントをトリガーして処理できるようになり、疎結合設計が可能になります。

以上が$on と $broadcast はどのようにして Angular でイベント通信を有効にしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!