PendingChanges仅适用于特定的OData实体



是否有一种方法可以只检查OData-Model的特定实体是否存在未完成的更改?待处理的更改没有任何输入参数,我也不确定是否DeferredGroups将为此工作。

我唯一的想法是使用ODataModel.getPendingChanges()并对结果进行字符串比较。但也许有一个更优雅的选择

最后,我找到了一种自定义pendingChanges-Method的方法。

_hasPendingChanges: function() {
    var oPendingChanges = this._oODataModel.getPendingChanges(),
        sValue = "MyEntitySetToIgnore",
        bReturn;
        var aPendingChanges = $.map(oPendingChanges, function(value, index) {
            return [index];
        });

        for (var i = 0; i < aPendingChanges.length; i++) {
            if (aPendingChanges.toString().startsWith(sValue)) {
                bReturn = this.DoSomeSpecialThingsHere();
            } else {
                return true;
            }
            if (bReturn) {
                return true;
            }
        }
        return false;
    },

您也可以调整$。Map函数通过返回值而不是索引来返回特定实体集的挂起更改。因此,您可以扩展此函数并使用它来检查特定实体集的特定属性。

相关内容

  • 没有找到相关文章

最新更新