# $event - 当前事件信息

$event代表当前交互发生时的事件信息。常用于:

  1. 在交互的启用条件中判断,只有当满足具体的交互细节时才执行交互动作。例如点击日历组件的“警告数字”时显示详细警告信息的提示面板、点击输入框的标题时显示帮助信息。
  2. 在交互弹出的对话框中,通过事件对象获取更多信息用于过滤数据。

在表达式中可以通过$event.xxx的形式获取细节信息,包括:

  • $event.type - 事件的类型,包括click, dbclick, hover, contextmenu, input, change……
  • $event.value - 当前事件发生时所在的组件(或部件、节点等)的“值”,如:被点击的树节点的id、按钮的值、输入框的值、日历中的用户点击的日期……
  • $event.targetType - 事件发生时用户点击或操作的“部件”,用于判断用户点击的具体内容,如:
    • $event.targetType="nodeIcon"表示点击的树节点图标
    • $event.targetType="nodeText"表示点击的树节点标题
    • $event.targetType="tree"表示点击的树的空白区域
    • $event.targetType="date"表示点击的日历控件的某一天(通过$event.value可以知道具体哪天)
    • $event.targetType="hintNumber"表示点击提示数字
    • $event.targetType="warnNumber"表示点击警告数字
    • $event.targetType="errorNumber"表示点击错误数字
    • ……,更多类型,可以由组件实现者提供
  • $event.targetDOM - 事件发生时点击的DOM元素,可以通过它进一步访问到下面的属性:
    • $event.targetDOM.textContent - DOM的内容,等价于$event.targetDOM
    • $event.targetDOM.tag - DOM的tag,如adiv
    • $event.targetDOM.className - DOM的内容样式,如果有多个那么逗号分割
    • $event.targetDOM.attributes - DOM的所有属性构成的JSON字符串
  • $event.targetData - 当前事件发生时所在的组件关联的数据,如用户点击列表中的某行,点击Gis地图中的某个点,可以通过它进一步访问到具体的字段的值:
    • $event.targetData.field1 - 获取用户点击的数据的的字段1的数据
    • $event.targetData.field2 - ...
  • $event.targetDataCount - 当前事件发生时所在的组件关联数据的行数。如:gispoints一个经纬度上对应了多个点;列表多选了几行数据并点击右键
  • $event.altKey - 事件发生时是否按下了alt键
  • $event.ctrlKey - 事件发生时是否按下了ctrl键
  • $event.metaKey - 事件发生时是否按下了meta键(windows是win键,macOS是cmd键)
  • $event.shiftKey - 事件发生时是否按下了shift键
  • $event.key - 用户键盘输入时输入的键
  • $event.uploadFile - 获取当前交互中用户上传的文件的文件ID,可以通过它进一步访问到下面的属性:
    • $event.uploadFile.ID - 文件ID,等价于$event.uploadFile
    • $event.uploadFile.name - 文件名
    • $event.uploadFile.size - 文件大小
  • $event.actionData - 交互中产生的数据,等价于$result。如扫码交互产生的URL;OCR识别产生的识别结果JSON
是否有帮助?
0条评论
评论