พยายามหาข้อมูลพื้นฐานของ AngularJS $rootScope.$broadcastแต่เอกสาร AngularJS ไม่ได้ช่วยอะไรมาก พูดง่ายๆว่าทำไมเราถึงใช้สิ่งนี้?
นอกจากนี้ภายในเทมเพลตHot Towelของ John Papa ยังมีฟังก์ชันที่กำหนดเองในโมดูลทั่วไปที่ชื่อ$broadcast:
function $broadcast() {
return $rootScope.$broadcast.apply($rootScope, arguments);
}
ฉันไม่เข้าใจว่านี่กำลังทำอะไรอยู่ ดังนั้นนี่คือคำถามพื้นฐานสองสามข้อ:
1) $rootScope.$broadcastทำอะไร?
2) อะไรคือความแตกต่างระหว่าง$rootScope.$broadcastและ$rootScope.$broadcast.apply?
$rootScope.$broadcast.apply()ใช้เพราะถ้าคุณต้องการส่งผ่านargumentsวัตถุพิเศษไปยังฟังก์ชันอื่นคุณต้องใช้apply()(ซึ่งตรงข้ามกับcall()) นอกจากนี้ในการเชื่อมโยง @ Blackhole ไปยังเพจ MDN argumentsในใช้คุณยังอาจตรวจสอบรายการบน