0

以下のコードの重要なビットと思われるものを含めています...

updates = {};
products = {};
newProducts = category.items[0].items;
oldProducts = categoryData[i][0].items;
itemsObj = {};    
updates['changes'] = [];

続いて、次のような「変更」に項目を追加する一連のコードが続きます...

itemsObj['update'] = "modify";
itemsObj['id'] = oldProduct.id;
itemsObj['type'] = oldProduct.type;
itemsObj['qty'] = newProduct.qty;
updates['changes'].push(itemsObj);

すべての更新の後、テスト中に以下のアラートを呼び出しました。後で削除しようとしたときに、上記の「変更」がなくなっていることがわかりました。

alert(JSON.stringify(updates));

上記のアラートを実行しない場合、「updates」(最終的には updateJSON) は、上記の「changes」ではなく、以下の「productRequest」のみを返します。文字列化されたバージョンの更新を別の変数に設定したり、コンソールにログを記録したり、オンラインで見つけた他のハックな方法を試したりしましたが、上記のアラートだけが機能します。明らかに、これを修正する方法があり、本番環境でアラートを発することはできません。

products['action'] =  "editProducts";
products['id'] =  xxxxxxxx;

updates['productRequest'] = products;

updateFinal = JSON.stringify(updates);
consoleLog(updateFinal);

誰でも私が期待するのは簡単な解決策ですか?

4

0 に答える 0