I am fetching value from local storage and pass it to modal. In code bellow console.log(obj);
line in the code prints initial value of the obj
which is {selectedRadious: 500, DistanceUnit: 'Meters'}
as this.storage.get()
is asynchronous function. How to handle it to get local storage value?
let obj = {selectedRadious: 500, DistanceUnit: 'Meters'};
this.storage.get('lastSetValue').then((val) => {
if(val.selectedRadious){
this.selectedRadious = val.DistanceUnit;
}
if(val.DistanceUnit){
this.DistanceUnit = val.DistanceUnit;
}
obj = {selectedRadious: this.selectedRadious, DistanceUnit: this.DistanceUnit};
})
.catch(err=>{
});
console.log(obj);
let myModal = this.modalCtrl.create(SettingModalPage, obj);
myModal.onDidDismiss(data => {
console.log('modal value: '+data.DistanceUnit)
this.DistanceUnit = data.DistanceUnit;
this.selectedRadious = data.selectedRadious;
let objValue = {selectedRadious: this.selectedRadious, DistanceUnit: this.DistanceUnit};
this.storage.set('lastSetValue', objValue);
});
myModal.present();