0

我将 JayData 与我的 OData 服务一起使用。

我从服务中加载实体,列出它们,并且有一种方法可以删除它们。

删除函数如下所示:

delete = function (entity) {
    if (confirm("Do you really want to delete this record?")) {
        entity.remove();
        database.saveChanges()
            .then(function () {
                loadEntities();
            });
        }
    };

它工作得很好:它删除实体并重新加载数据。问题是,它发送 REQUEST 以删除数据并在请求尚未完成时重新加载它,并且它重新加载数据,其中仍然存在“即将删除”实体。

我怎么知道删除何时完成?

4

1 回答 1

1

我们有两个 API,您将它们混合在一起。首先,我们有类似于 LINQ 的 JSQL,您可以使用回调或承诺,例如:

 database.remove(entity);
 database.saveChanges(function() {
 });

或者

 database.remove(entity);
 database.saveChanges()
 .then(function() {
 });

我们还有第二个 API,叫做 itemstore api,它的功能有限但更简单,不需要使用 context,saveChanges 并且你只能使用 Promise

 database.remove(entity)
 .then(function() {
 });
于 2013-09-27T09:09:54.887 回答