Penyiaran dan Pengendalian Acara dengan $broadcast dan $on dalam Sudut
Memahami Masalah
Pengendalian acara Angular adalah aspek asas komunikasi antara komponen. Senario khusus ini melibatkan mencetuskan peristiwa dalam komponen pengaki dan mengendalikannya dalam komponen pengimbas kod. Soalan ini meneroka cara untuk mencapai ini menggunakan $broadcast dan $on.
Menggunakan $broadcast untuk Pemancaran Peristiwa
Dalam pengawal komponen pengaki, $rootScope boleh digunakan untuk penyiaran acara:
<code class="javascript">$scope.startScanner = function() { $rootScope.$broadcast('scanner-started'); }</code>
Barisan ini mengeluarkan acara bernama 'scanner-started' apabila butang dalam pengaki diklik.
Menggunakan $on untuk Mendengar Acara
Dalam pengawal komponen pengimbas kod, $scope boleh digunakan untuk mendengar acara yang disiarkan:
<code class="javascript">$scope.$on('scanner-started', function(event, args) { // Handle event });</code>
Pendengar acara ini akan dicetuskan apabila acara 'dimulakan pengimbas' dipancarkan.
Meluluskan Hujah dengan $broadcast
Hujah boleh dihantar bersama dengan acara yang disiarkan menggunakan kaedah $broadcast:
<code class="javascript">$rootScope.$broadcast('scanner-started', { any: {} });</code>
Mendapatkan semula Hujah dalam $on
Hujah yang diluluskan boleh diambil dalam pendengar acara $on:
<code class="javascript">$scope.$on('scanner-started', function(event, args) { var anyThing = args.any; // Handle event });</code>
Pertimbangan Tambahan
Atas ialah kandungan terperinci Bagaimana untuk Mencetuskan Peristiwa dalam Komponen Pengaki dan Mengendalikannya dalam Komponen Pengimbas Kod Menggunakan $broadcast dan $on Angular?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!