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));

如果我不执行上面的警报,那么“更新”(最终是 updateJSON)只会返回下面的“productRequest”,而不是上面的“更改”。我尝试将更新的字符串化版本设置为另一个变量,登录到控制台,以及我在网上找到的其他一些 hacky 方式,但只有上述警报对我有用。显然有办法解决这个问题,我不能在生产中发出警报。

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

updates['productRequest'] = products;

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

有人有我期望的简单解决方案吗?

4

0 回答 0