Es scheint, dass die Anwendung aus irgendeinem Grund nicht bis zur nächsten Aktion aktualisiert wird (klicken Sie zum zweiten Mal auf eine Schaltfläche).Ionic 2 mit Versprechen aktualisiert die Ansicht nicht korrekt
Zum Beispiel:
import {Component} from '@angular/core';
import {SqlStorage} from "ionic-angular";
@Component({
templateUrl: 'build/pages/authenticate/authenticate.html'
})
export class AuthenticatePage {
private username: string;
private storage: SqlStorage = null;
private usernameTemp: string;
constructor() {
}
saveCredentials(){
this.storage = new SqlStorage();
this.storage.set("username", JSON.stringify(this.username));
}
showCredentials(){
let sqlStorage = new SqlStorage();
sqlStorage.get('username').then((data) => {
if (data != null){
this.usernameTemp = JSON.parse(data);
} else{
this.usernameTemp = 'fail';
}
});
}
}
Ein Klick, der die showCredentials auslösen() Funktion wird nicht angezeigt usernameTemp auf dem Bildschirm, wenn der Bildschirm eine hat {{}} usernameTemp Abschnitt bis zum zweiten Mal angeklickt wird. Es zeigt immer den vorherigen Wert an - wenn Sie etwas schreiben und es mit saveCredentials() speichern, dann rufen Sie showCredentials() auf, ändern Sie den Wert und rufen Sie saveCredentials() auf, dann rufen Sie showCredentials() erneut auf - Sie sehen den ersten Benutzernamen nicht der Zweite.
Ist es möglich, dass passiert nur mir? Mache ich etwas falsch?
Danke, Nimrod.