Angularjs中不同作用域之间可以通过组合使用$broadcast,$emit,$on的事件广播机制来进行通信
介绍:
$broadcast的作用是将事件从父级作用域传播至子级作用域,包括自己。格式如下:$broadcast(eventName,args)
$emit的作用是将事件从子级作用域传播至父级作用域,包括自己,直至根作用域。格式如下:$emit(eventName,args)
$on用于在作用域中监控从子级或父级作用域中传播的事件以及相应的数据。格式如下:$on(event,data)
上述说明中,eventName是需要监控的事件的名称,$on 方法中的参数event是事件的相关对象,data是事件传播的数据。
在$on的方法中的event参数,有如下的属性和方法
事件属性/方法 功能性说明
事件属性/方法
功能性说明
event.targetScope
获取传播事件的作用域
event.currentScope
获取接收事件的作用域
event.name
传播的事件的名称
event.stopPropagation()
阻止事件进行冒泡传播,仅在$emit事件中有效
event.preventDefault()
阻止传播事件的发生
event.defaultPrevented
如果调用了preventDefault事件则返回true
代码:
<!DOCTYPE html> <html ng-app="myApp"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <meta charset="utf-8" /> <script src="/UploadFiles/2021-04-02/angularjs.js">Code
其他属性:以上这篇Angularjs中的事件广播 —全面解析$broadcast,$emit,$on就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。