Vue Storage enthält eine Lösung für Boolesche Werte

Vue Storage enthält eine Lösung für Boolesche Werte

Vue speichert Speicher mit Booleschen Werten

Ich bin heute auf ein Problem gestoßen. Ich musste die vom Hintergrund zurückgegebenen wahren und falschen Werte im Speicher speichern und dann die gespeicherten Werte für logische Urteile verwenden. Die Urteile waren jedoch immer falsch. Nachdem ich die Informationen überprüft hatte, fand ich

Beim Speichern von Daten im lokalen Speicher werden die gespeicherten Booleschen Werte zu Zeichenfolgen anstelle der ursprünglich gespeicherten Booleschen Werte.

Bildbeschreibung hier einfügen

Alles in Saiten verwandelt

Wie kann man das Problem also lösen?

1: Eine Konvertierung wird am Frontend durchgeführt

wenn (localStorage.getItem('boolean') == 'true') {
		// Weisen Sie den neuen Wert 'Boolescher Wert' = true zu
}

Oder verwenden Sie beim Speichern keine Booleschen Werte zum Speichern, sondern stattdessen Zahlen oder andere Werte und treffen Sie dann die Entscheidung.

// Der vom Hintergrund zurückgegebene Wert ist true
wenn (wahr) {
	localStorage.setItem('Boolean', 1)
}anders {
	localStorage.setItem('boolean', 2)
}
// Bei Bedarf if (localStorage.getItem('Boolean value') == 1) {
	// Behandeln Sie das Ereignis }else {
	// Behandeln Sie das Ereignis}

Eine Falle beim Speichern von Booleschen Werten im lokalen Speicher

Problembeschreibung

Ich habe vor Kurzem LocalStorage verwendet, um bei der Arbeit einige gemeinsam genutzte Variablen zu speichern, bin dabei aber auf viele Probleme gestoßen, als ich Boolesche Werte gespeichert habe.

Der Zugang erfolgt grundsätzlich wie folgt:

localstorage.setItem('key', value);//speichern localstorage.getItem('key');//abrufen

Da jedoch beim Speichern Boolescher Daten die im lokalen Speicher gespeicherten Booleschen Daten in Zeichenfolgen konvertiert werden, werden "true"=true und "false"==false, "true"==false alle als false angezeigt, was zu vielen Versuchen führt, ohne das Problem zu finden.

Endgültige Lösung

Wenn Localstorage oder Sessionstorage Boolesche Daten speichert, werden die erhaltenen Daten zu den Zeichenfolgen „true“ und „false“. Es wird empfohlen, beim Speichern dieser Art von Daten den Wert auf 0 oder 1 zu setzen und beim Abrufen des Werts die Nummer (localstorage.getItem („Schlüssel“)) zu verwenden und dann nachfolgende Beurteilungsvorgänge durchzuführen.

Der spezifische Code lautet wie folgt:

Gespeicherter Wert:

wenn (dies.istGeprüft) {
      //0: aktiviert
      localStorage.setItem("aktiviert",0);
} anders {
       //1: nicht aktiviert
       localStorage.setItem("aktiviert",1);
}

Wert:

getFlag:Funktion(){
    var flag = Zahl (localStorage.getItem ('aktiviert'));
    wenn(flag==0){
         dies.flag=wahr;
     }sonst wenn(flag==1){
          dies.flag=false;
     }
}

Zusammenfassen:

Sowohl localStorage als auch sessionStorage können nur String-Objekte speichern, aber keine Arrays oder Objekte, die üblicherweise in JS verwendet werden, direkt speichern.

Sie können die vom JSON-Objekt bereitgestellten Methoden „Parse“ und „Stringify“ verwenden, um andere Datentypen in Zeichenfolgen zu konvertieren und diese dann im Speicher zu speichern.

Der Code lautet wie folgt:

Gespeicherter Wert:

localStorage.setItem("flag_data",JSON.stringify(flagData));

Wert:

var flag_data = JSON.parse(localStorage.getItem("flag_data"));

Das Obige ist meine persönliche Erfahrung. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden.

Das könnte Sie auch interessieren:
  • So überwachen Sie Änderungen in localStorage oder sessionStorage in einem Vue-Projekt
  • Vue basierend auf localStorage Speicherinformationen Codebeispiel
  • Vue verwendet Localstorage zur Implementierung von Breadcrumbs
  • Vue verwendet den lokalen Cache von localStorage, um die Funktion zum Aktualisieren des Bestätigungscodes ohne Löschen zu implementieren
  • So machen Sie localStorage in Vue reaktionsfähig (Gedankenexperiment)
  • Suchfeld-Suchinhalt basierend auf Vue sessionStorage beibehalten

<<:  Einführung in die Eigenschaften von B-Tree

>>:  Einführung in den B-Tree-Einfügeprozess

Artikel empfehlen

Vue implementiert ein einfaches Einkaufswagenbeispiel

In diesem Artikel wird der spezifische Code von V...

DOCTYPE Dokumenttypdeklaration (unbedingt lesenswert für Webseiten-Liebhaber)

DOCTYPE-DEKLARATION: Oben auf jeder Seite, die Sie...

Vue+js realisiert Video-Ein- und Ausblendeffekte

Vue+js realisiert das Ein- und Ausblenden des Vid...

So verwenden Sie Nginx als Load Balancer für MySQL

Hinweis: Die Nginx-Version muss 1.9 oder höher se...

So installieren Sie eine MySQL-Datenbank unter Ubuntu

Ubuntu ist ein kostenloses und quelloffenes Deskt...

Zusammenfassung zur Anwendung dekorativer Elemente im Webdesign

<br />Vorwort: Bevor Sie dieses Tutorial les...

Wie werden Vue-Komponenten analysiert und gerendert?

Vorwort In diesem Artikel wird erklärt, wie Vue-K...

MySQL-Trigger: ausführliche Erklärung und einfaches Beispiel

Einfaches Beispiel für einen MySQL-Trigger Gramma...

Detaillierte Einführung in den Nobody-Benutzer und Nologin im Unix/Linux-System

Was ist der Nobody-Benutzer in Unix/Linux-Systeme...

Detaillierte Erklärung zu sinnvollen Einstellungen des MySQL sql_mode

Sinnvolle Einstellung des MySQL sql_mode sql_mode...