SAP UI5 sap.ui.core.Element 的概要介绍
sap.ui.core.Element 是所有 SAP UI5 页面 Element(中文翻译为元素) 的基类。
Element 是 UI5 UI 最基本的构建块。 元素具有类似于 ManagedObject 的状态,它具有唯一的 ID,框架通过该 ID 记住它。 它可以有关联的 DOM,但它不能呈现自己。 只有 SAP UI5 Control 可以呈现自己,并负责呈现它们作为子元素聚合的元素。 如果一个元素已被渲染,它的相关 DOM 将获得与该元素相同的 ID,从而可以通过 API 检索。 当一个元素的状态改变时,它会通知它的父控件,它通常会重新渲染。
UI5 框架已经为常见的浏览器事件注册了通用侦听器,例如 click
或 keydown
.
调用时,通用侦听器(generic listeners)首先使用 jQuery.control
方法确定相应的目标元素。然后它检查元素是否具有事件的 event handler 方法。按照惯例,事件处理程序方法与事件同名,但以on
为前缀:例如方法 onclick 是单击事件的处理程序,方法 onkeydown 是 keydown 事件的处理程序,依此类推。
如果有这样的方法,它将以原始事件作为唯一参数来调用。如果元素有一个已注册的委托列表,则它们的处理函数将在存在的情况下以相同的方式调用。
元素和委托之间实现的处理程序集可能不同。并非由元素实现的每个处理程序都必须由其委托实现,并且委托可以实现相应元素未实现的处理程序。
可以在 module:sap/ui/events/ControlEvents
中找到以这种方式处理的浏览器事件列表。此外,框架使用相同的命名约定调度伪事件(模块:sap/ui/events/PseudoEvents)。最后需要强调的一点是,一些框架事件也以这种方式分派,例如BeforeRendering、AfterRendering(仅用于控件)和 ThemeChanged。
如果需要更多浏览器事件,控件可以在其 onAfterRendering 处理程序中使用本机 API 在 DOM 上注册侦听器。如果需要,他们也可以对其聚合元素执行此操作。如果事件可能经常触发(例如 mousemove),最好只在需要时注册它们,然后再取消注册。无论如何,必须在 onBeforeRendering 侦听器中以及在退出钩子中销毁之前清理任何已注册的侦听器,以防止内存泄漏。
相关文章
- 浅谈 SAP ABAP 系统里的 ALV 输出方式实现
- 【愚公系列】2022年11月 .NET CORE工具案例-.NET Core执行JavaScript
- SAP UI5 sap.ui.Device.media.RANGESETS.SAP_STANDARD_EXTENDED 介绍
- windows 环境下使用 Node.js 访问 SAP OData 遇到 unable to get local issuer certificate
- [ChatGPT 勘误] SAP UI5 的 sap.ui.base.Object
- 【愚公系列】2023年02月 .NET CORE工具案例-Workflow-Core轻量级工作流引擎(随机流程)
- 【愚公系列】2023年02月 .NET CORE工具案例-Workflow-Core轻量级工作流引擎(数据流转)
- SAP UI5 sap.m.Table Manual Pop-In Mode 概述
- 澄清一些对 SAP UI5 响应式表格 sap.m.Table 的常见理解误区试读版
- 关于 SAP UI5 接口 sap.ui.core.IAsyncContentCreation 的问题讨论
- 安装SAP,Linux获台前瞻未来(linux安装sap)
- SAP后台Job数据保存在表TBTCP/TBTCO中详解编程语言
- SAP字段与表的对应关系详解编程语言
- SAP MIR7输入数量自动金额的设置详解编程语言
- SAP MM MIRO的时候,发票价格与物料主数据的价格(移动平均价)有差异的处理详解编程语言
- SAP 取月度期初库存和月度期末库存(历史库存)-mard和mardh的区别详解编程语言
- SAP vs Oracle:差异点与解析(sap和oracle的区别)
- 对比SAP VS Oracle: 哪个更适合你?(sap与oracle)
- Oracle与SAP在仓储领域的联姻(仓库oracle和sap)
- 缓存使用SAP创建Redis缓存,实现高效稳定加速(sap如何创建redis)
- 聘请高级Oracle与SAP顾问,拓展业务潜力(oracle sap顾问)
- Oracle 与 SAP深度对比分析(oracle sap对比)