带存储的离子 3
ionic 3 with storage
我正在使用带存储的 ionic 3。
首先,我在 app.module.ts
中导入存储
import { IonicStorageModule } from '@ionic/storage';
imports: [
IonicStorageModule.forRoot()
]
我开发了电子商务app.If我使用存储将任何产品添加到购物车。
这是我的购物车页面代码。
<ion-row class="apply-coupon" *ngFor="let p of Cartproducts;let i=index">
<ion-col col-4>
<img src="{{p.P_IMAGES[0].URL}}" alt="product2">
</ion-col>
<ion-col col-8>
<h1>{{p.P_TITLE}}</h1>
<p class="subtitle">Subtitle</p>
<p class="code">Code: 123</p>
<div>
<button (click)="cancel(i)">Cancel X</button>
</div>
</ion-col>
</ion-row>
this.items.push(item);
this.storage.set('products',this.items);
项目是产品detail.and我已经显示了购物车数量。
this.storage.get('products').then((data) => {
if(data != null)
{
this.Cartproducts=data;
console.log(this.Cartproducts);
}
});
这是我的安慰值。
[
{
'Product_title':'Product name',
'Product desc':'product dec',
'id':1
},
{
'Product_title':'Product name',
'Product desc':'product dec'
'id':2
}
]
如果我需要删除最后一个产品。
this.Cartproducts.splice(i, 1);
console.log(this.Cartproducts);
this.storage.remove('products');
this.storage.set('products',this.Cartproducts);
这是我的安慰值。
[
{
'Product_title':'Product name',
'Product desc':'product dec',
'id':1
}
]
我删除了'products'
中的存储值我再次设置值products
我需要另一个product.so我要去产品页面添加产品。
但我的结果是
[
{
'Product_title':'Product name',
'Product desc':'product dec',
'id':1
},
{
'Product_title':'Product name',
'Product desc':'product dec'
'id':2
},
{
'Product_title':'Product name',
'Product desc':'product dec'
'id':3
}
]
但实际上,我删除了第二个 product.Did 未设置为存储为什么?
多多指教,
谢谢
尝试
this.storage.get('products').then((data) => {
if(data == null)
{
data=[];
}
this.items=data;//re-initialize the items array equal to storage value
this.items.push(item);
this.storage.set('products',this.items);
});
而不是
this.items.push(item); this.storage.set('products',this.items)
我正在使用带存储的 ionic 3。
首先,我在 app.module.ts
中导入存储import { IonicStorageModule } from '@ionic/storage';
imports: [
IonicStorageModule.forRoot()
]
我开发了电子商务app.If我使用存储将任何产品添加到购物车。
这是我的购物车页面代码。
<ion-row class="apply-coupon" *ngFor="let p of Cartproducts;let i=index">
<ion-col col-4>
<img src="{{p.P_IMAGES[0].URL}}" alt="product2">
</ion-col>
<ion-col col-8>
<h1>{{p.P_TITLE}}</h1>
<p class="subtitle">Subtitle</p>
<p class="code">Code: 123</p>
<div>
<button (click)="cancel(i)">Cancel X</button>
</div>
</ion-col>
</ion-row>
this.items.push(item);
this.storage.set('products',this.items);
项目是产品detail.and我已经显示了购物车数量。
this.storage.get('products').then((data) => {
if(data != null)
{
this.Cartproducts=data;
console.log(this.Cartproducts);
}
});
这是我的安慰值。
[
{
'Product_title':'Product name',
'Product desc':'product dec',
'id':1
},
{
'Product_title':'Product name',
'Product desc':'product dec'
'id':2
}
]
如果我需要删除最后一个产品。
this.Cartproducts.splice(i, 1);
console.log(this.Cartproducts);
this.storage.remove('products');
this.storage.set('products',this.Cartproducts);
这是我的安慰值。
[
{
'Product_title':'Product name',
'Product desc':'product dec',
'id':1
}
]
我删除了'products'
中的存储值我再次设置值products
我需要另一个product.so我要去产品页面添加产品。
但我的结果是
[
{
'Product_title':'Product name',
'Product desc':'product dec',
'id':1
},
{
'Product_title':'Product name',
'Product desc':'product dec'
'id':2
},
{
'Product_title':'Product name',
'Product desc':'product dec'
'id':3
}
]
但实际上,我删除了第二个 product.Did 未设置为存储为什么?
多多指教,
谢谢
尝试
this.storage.get('products').then((data) => {
if(data == null)
{
data=[];
}
this.items=data;//re-initialize the items array equal to storage value
this.items.push(item);
this.storage.set('products',this.items);
});
而不是
this.items.push(item); this.storage.set('products',this.items)