Typoskript Rückgabe boolean nach dem Versprechen gelöst

Ich versuche es ein boolean zurückgibt, nachdem ein Versprechen löst aber Typoskript gibt eine Fehlermeldung

A 'get' accessor must return a value.

mein code aussieht.

get tokenValid(): boolean {
    //Check if current time is past access token's expiration
    this.storage.get('expires_at').then((expiresAt) => {
      return Date.now() < expiresAt;
    }).catch((err) => { return false });
}

Dieser code ist für Ionic-3-Anwendung und die Lagerung der Ionischen Speicher-Instanz.

Du kannst das nicht tun... können Sie die Rückgabe einem Promise<boolean> durch Rückgabe nur this.storage.get... obwohl.
Und sollten Sie wahrscheinlich nicht verwenden Sie eine get-Methode für eine Sache, die hat Nebenwirkungen.
Ja, das ist eine genauere Beschreibung. Ich verwendete "side-Effekt", weil a) die Zeit wird oft als ein b) wir ja nicht wissen, was eine Abfrage tut (und "senden einer Anforderung" könnte eine Aktion, die mutiert, die alle Arten von Zeug, zumindest auf den unteren Ebenen).
Nein, wenn es asynchrone es wieder ein Versprechen für die boolean-Wert. Machen Sie es eine Methode, nur das auslassen der get.
Nein, es ist nicht möglich es synchron. Mit async/await syntax nur Zucker für then ruft - es ist immer noch asynchron und gibt ein Versprechen.

InformationsquelleAutor user2473015 | 2017-08-13

Schreibe einen Kommentar