В моем приложении я использую IonicStorageModule (ionic4 & angular8), чтобы использовать DB на front-End. Он работает в Интернете (chrome & Firefox), но когда я эмулирую его, он не работает. Я пробовал также на мобильном устройстве, и та же проблема ...
Я пытался использовать Native-storage, но не могу проверить его в Интернете, и он не работает на устройстве или симуляторе.
В HTML-коде я вызываю с помощью ngSubmit «onAddLocation», который вызывает locService.addLocation (data). В эмуляторе и устройстве у меня нет логов (я не знаю, как иметь логи).
//app.module.ts:
imports: [BrowserModule,
IonicModule.forRoot(),
AppRoutingModule,
HttpClientModule,
IonicStorageModule.forRoot({
name:'MyLocations',
driverOrder:['indexeddb','sqlite','websql']
}),...
//loc.service.ts:
export class LocService {
private locations:Array<Place>=[];
public currentLocation:Place;
constructor(private storage:Storage) {
}
public getLocations(){
return this.storage.get("locations").then(data=>{
this.locations=(data!=null?data:[]);
return this.locations.slice();
});
}
public addLocation(place:Place){
this.locations.push(place);
this.storage.set("locations",this.locations);
}
//location.page.ts:
onAddLocation(data:Place) {
this.geolocation.getCurrentPosition().then(resp=>{
data.coordinates={
longitude:resp.coords.longitude,
latitude:resp.coords.latitude
}
this.locService.addLocation(data);
this.navCtrl.back();
},err=>{
console.log('Error getting location', err);
})
}