簡體   English   中英

IBM MobileFirst 6.3 JSONStore除去JS中的問題

[英]IBM MobileFirst 6.3 JSONStore remove issue in JS

我正在使用

WL.JSONStore.get(collectionName).remove(doc) 

在我的代碼中,有時它不會刪除文檔,甚至不會將它們標記為已刪除。 我可能會做錯什么? 順便說一句,這:

WL.JSONStore.get(collectionName).clear()

工作正常。

更新:

好的,這里有一些代碼,它在我的瀏覽器中顯示。

var collectionName = 'samplecollection';
var data = [{"name":"Jimbo"},{"name":"Patrick"},{"name":"Alex"},{"name":"Sam"},{"name":"Charlie"},{"name":"Donnie"}];

WL.JSONStore.init({samplecollection:{}}).then(function() {
    WL.JSONStore.get(collectionName).add(data).then(function(){
        WL.JSONStore.get(collectionName).findAll().then(function(docs){
            var promises = [];
            docs.forEach(function(doc){
                console.log(doc);
                var promise = WL.JSONStore.get(collectionName).remove(doc);
                promises.push(promise);
            });
            $.when.apply(null, promises).done(function() {
                WL.JSONStore.get(collectionName).findAll().then(function(docs){
                    console.table(docs);
                });
            });
        });
    });
});

chrome中的代碼結果

我希望console.table顯示一個空數組。 但這不是空的。 它也沒有所有保存的對象。 所以我試圖了解這里發生了什么。 有任何想法嗎?

根據我的經驗,JS的JSONStore不能很好地處理並行請求。 您可以使用async.js之類的東西來創建串行請求。

我在此博客中介紹了部分內容https://developer.ibm.com/mobilefirstplatform/2015/02/24/working-jsonstore-collections-join/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM