我使用离子2存储。离子2存储不能正常工作
我开发了一个电子商务应用程序。
如果有任何产品添加到购物车,我将使用存储器存储产品。
这里是我的功能
//Add to cart
addItemToCarts(item)
{
this.items.push(item);
this.storage.set('products',this.items);
}
它的工作,也是我显示徽章计数这意味着products
长度。
获取storage(products)
长度。这里是我的代码
//Get cart Count
this.storage.get('products').then((data) => {
if(data != null)
{
this.badge='';
this.badge=data.length;
this.Cartproducts=data;
console.log("data");
console.log(data);
}
});
如果我删除任何产品在cart.Using这个代码,并再次设置为存储。
这里是我的代码
cancel(i)
{
console.log(i);
this.Cartproducts.splice(i, 1);
var item=this.Cartproducts;
this.length=this.Cartproducts.length;
console.log(this.Cartproducts);
this.storage.remove('products');
this.storage.set('products',item);
}
比如我的购物车页面产品长度为3,如果我删除任何一个产品,长度为2.and徽章数量也为2
如果我再次加任何一款产品。存储产品长度为4为什么?
但实际上,存储产品长度是3.是吗?
我不知道。
请告诉我,
谢谢。
当你取消一个项目时,你更新'this.length'而不是'this.badge'。当你获得存储计数时,情况正好相反。但是,你说当你取消一个项目时,两个值都会被更新。我认为你没有分享足够的代码让我们看到整个画面。就像没有任何东西告诉我们,当你用'addItemToCarts'添加一个项目时,计数会被更新。我们错过了您的代码部分之间的链接。 – Kaddath