点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
实际上,我每次尝试以UI5形式每隔2秒钟进行一次odata更改时都会实现一种保存功能,如下所示
_saveDraft:函数(oEvent){ setInterval(function(){ 如果(this.getView()。getModel()。hasPendingChanges()){ this.getView()。getModel()。submitChanges({ 成功:函数(oData){ sap.m.MessageToast.show("草稿已保存"); console.log(this.getView()。getModel()。getPendingChanges()); this.getView()。getModel()。refresh(); } .bind(this), 错误:函数(oError){} }); } } .bind(this),2000); },
但是这里的问题是函数commitChanges每2秒执行一次。 我该如何操纵about代码每2秒执行一次,仅在表单发生变化的情况下。
hasPendingChanges方法始终返回true,getPendingChanges方法也返回地图对象,即使更改已提交到后端。 理想情况下,在oData Model上成功执行提交更改后,getPendingChanges应该为空。
致谢
草皮
您好,
首先,也许您可以做ar esetChanges ,但是通常情况下,调用成功方法时,submitChange重置会更改。
第二,也许在该行添加注释:
这是没有用的,例如 submitChanges 已经完成了这项工作。 待处理的更改非常敏感,请执行 getPendingChanges 来分析已更改的内容,也许在您的代码中有您不知道的修改。
约瑟夫
一周热门 更多>