当前位置: 首页 > Web前端 > HTML5

关于SAPUI5参数$$updateGroupId前面两个$符号的含义

时间:2023-04-05 02:10:26 HTML5

我的SAPUI5教程,SAPUI5应用开发教程六十五-如何基于OData创建、编辑和保存SAPUI5表格控件V4,演示了通过XML视图定义复合绑定路径的语法,非SAPUI5Table控件,如下图所示:这行语句的语义是:当用户修改(更新)表行项时,表格控件不会立即更新这些修改通过HTTPPost请求发送到提供OData服务的MockServer,而是延迟到用户点击工具栏上的Save按钮后才发送HTTPPostBatch请求保存修改.peopleGroup是Batch请求的组号,在Chrome开发者工具中可以观察到:有朋友在XML视图中提出了这样一个关于参数$$updateGroupId的问题:这个updateGroupId前面是两个$符号,前面是countbya$,你能解释一下这个意思吗?什么时候是一,什么时候是二?其实答案很简单:带有单个$符号的操作意味着这是OData协议支持的标准操作。所有这些标准操作的列表可以在OData协议的官方网站上找到,例如:$search$filter$count$orderby$skip$top等等。以两个$$开头的操作,表示是SAP为了区别于OData协议标准的操作而引入的自定义参数。这个原理其实和SAPUI5index.html页面中id为sap-ui-bootstrap的bootstrap脚本元素中有大量data-sap-XXXX属性定义是一样的。这些属性以data-sap开头,也是为了避免和HTML标准属性冲突的可能。ODataV4模型支持为读取、更新和删除操作指定不同的组ID。调用ODataModelAPI提交的变更请求,将根据组ID合并为同一批请求。更详细的groupid字段可以参考这两篇文章:详解SAPUI5Context.prototype.delete方法的入参GroupIDHowtheSAPUI5ODataV4modelisconstructed