尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

SAP UI5 里有没有类似 RxJS throttle 的机制,从事件节流语义到 UI5 工程实现的完整分析

SAP UI5 里有没有类似 RxJS throttle 的机制,从事件节流语义到 UI5 工程实现的完整分析 在复杂的SAP UI5应用里,一个很典型的问题是liveChange、scroll、resize、拖拽、鼠标移动或者连续状态变化产生得太快。事件本身可能几十毫秒就来一次,而事件处理函数里又可能触发JSONModel更新、表格过滤、布局计算,甚至发起OData请求。到了这里,很自然会想到RxJS里的throttle。直接给结论,SAP UI5没有一个面向应用开发者公开提供、并且在编程模型上等价于RxJS throttle的公共 Operator。但这个答案里藏着一个很有意思的细节。当前OpenUI5源码中实际上真的存在一个名叫sap/base/util/restricted/_throttle的模块,而且源码明确说明它从UI5 1.71开始存在。继续看实现会发现,这个模块非常薄,只是从 UI5 内部维护的定制Lodash中取出lodash.throttle并返回。不过同一份源码也明确标记了@private和@ui5-restricted,所以它属于框架内部实现细节,不属于普通SAP UI5应用应该依赖的稳定公共 API。(
返回列表