Bagaimana untuk Menggunakan $on dan $broadcast untuk Komunikasi Acara dalam Angular?

Susan Sarandon
Lepaskan: 2024-10-26 15:42:02
asal
458 orang telah melayarinya

How to Use $on and $broadcast for Event Communication in Angular?

Komunikasi Acara dalam Sudut: $on dan $broadcast

Dalam Sudut, komunikasi acara adalah penting untuk menyelaraskan interaksi antara bahagian aplikasi yang berlainan . $on dan $broadcast ialah mekanisme Sudut teras yang membolehkan penyiaran dan pengendalian acara yang berkesan merentas komponen.

Pemahaman $on dan $broadcast

  • $broadcast: Dipancarkan oleh skop untuk memberitahu semua keturunannya (skop kanak-kanak) dan rantaian induk skop tentang acara tertentu.
  • $on: Didaftarkan oleh skop kepada dengar acara tertentu yang disiarkan daripada skop semasa, skop induknya atau skop anak-anaknya.

Melaksanakan Komunikasi Acara dalam Contoh Anda

Dalam kes anda, anda mahu peristiwa klik dalam pengawal pengaki untuk mencetuskan peristiwa yang boleh dikendalikan oleh pengawal pengimbas kod. Untuk mencapai ini:

1. Penyiar (footerController):

  • Gunakan $rootScope untuk menyiarkan acara, kerana ia merangkumi semua skop dalam aplikasi.
  • Tentukan fungsi seperti berikut dalam footerController:
$scope.startScanner = function() {
    $rootScope.$broadcast('scanner-started');
}
Salin selepas log masuk

2. Penerima (codeScannerController):

  • Gunakan $on untuk mendengar acara siaran dalam codeScannerController:
$scope.$on('scanner-started', function(event, args) {
    // Your logic here
});
Salin selepas log masuk

Keupayaan Tambahan:

  • Anda boleh menyampaikan hujah apabila menyiarkan acara menggunakan $broadcast('event-name', { any: {} }).
  • Oleh itu, anda boleh menerima hujah ini dalam pengendali acara penerima.

Dokumentasi Rujukan:

Untuk maklumat lebih terperinci, rujuk dokumentasi Sudut rasmi tentang skop: https://docs.angularjs. org/api/ng/type/$rootScope.Scope

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan $on dan $broadcast untuk Komunikasi Acara dalam Angular?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!