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

资讯详情

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

SAP UI5 有没有 RxJS defer 的对应机制,从延迟求值到 OData V4 Deferred Operation 的完整映射

SAP UI5 有没有 RxJS defer 的对应机制,从延迟求值到 OData V4 Deferred Operation 的完整映射 在 SAP Fiori 应用里,有一类代码很容易让熟悉 Angular 和 RxJS 的开发者产生似曾相识的感觉。页面已经创建好了,ODataModel也已经存在,某个业务动作的描述甚至已经绑定到了页面上,但真正的后端调用并没有发生。只有用户点击审批、重新定价、模拟订单或者执行某个业务Action时,请求才真正从浏览器发出去。如果从RxJS defer的思维来看,这种行为很像一句话,先把未来要做的事情描述好,现在不要执行,等到真正需要的时候再创建并执行。SAP UI5 确实存在这种设计思想,而且在OData V4里甚至存在官方名称就叫deferred operation binding的机制。不过,如果严谨地问一句,SAP UI5 有没有一个和RxJS defer一模一样的Operator,答案仍然是否定的。更准确的结论应该是,SAP UI5 没有一个通用的、基于Observable subscription语义的defer等价物,但 SAP UI5 的多个机制分别覆盖了defer所解决问题的一部分。其中最接近的原生机制是OData V4 deferred operation binding,而在一般的 UI5 业务代码中,我们通常使用函数工厂、Promise、事件触发、延迟模块加载以及延迟Fragment创建来实现类似效果。真正需要完整
返回列表