Vue implementiert Funktionen zum Hinzufügen, Löschen und Ändern des lokalen Speichers

Vue implementiert Funktionen zum Hinzufügen, Löschen und Ändern des lokalen Speichers

In diesem Artikelbeispiel wird der spezifische Code von Vue zur Implementierung des Hinzufügens, Löschens und Änderns von lokalem Speicher zu Ihrer Information geteilt. Der spezifische Inhalt ist wie folgt

Funktionalität:

Die Eingabe wird der laufenden Liste hinzugefügt.

Durch Doppelklicken wird die Funktion geändert.

Klicken Sie auf die Esc-Taste, um abzubrechen, oder auf den vorherigen Inhalt.

Klicken Sie auf „Eingabe“, um die Änderung erfolgreich abzuschließen.

Die Änderung ist erfolgreich, wenn der Änderungsrahmen den Fokus verliert.

Wenn die Schaltfläche ausgewählt ist, gelangt sie in die Liste der abgeschlossenen Vorgänge, und wenn sie nicht ausgewählt ist, gelangt sie in die Liste der laufenden Vorgänge.

Klicken Sie auf „Löschen“, um die Zeile zu löschen.

Die zuletzt hinzugefügten Dateien sind beim nächsten Öffnen des lokalen Speichers noch vorhanden.

<!DOCTYPE html>
<html>
 <Kopf>
  <meta charset="utf-8">
  <Titel></Titel>
  <style type="text/css">
  *{
   Polsterung: 0; Rand: 0;
  }
   ul{
    Listenstil: keiner;
   }
   li{
    Breite: 220px;
    Höhe: 40px;
    Rand: 1px durchgezogener Gainsboro;
    Rand oben: 4px;
    Anzeige: Flex;
    Inhalt ausrichten: Abstand dazwischen;
    Elemente ausrichten: zentrieren;
    Hintergrundfarbe: #6CE26C;
   }
   .del{
    Rand rechts: 5px;
    Rand: keiner;
    Breite: 20px;
    Höhe: 20px;
    Hintergrundfarbe: #008200;
   }
  </Stil>
 </Kopf>
 <Text>
  <div id="app">
   <!-- Vorangehende und nachfolgende Leerzeichen im Eingabeinhalt filtern-->
   <!-- Veranstaltung eingeben -->
   <input type="text" v-model.trim="temp" @keyup.enter="additem()"/>
   <!-- Anzahl der laufenden Vorgänge abrufen -->
   <h3>In Bearbeitung{{undolist.length}}</h3>
   <ul Klasse="Liste">
    <!-- Den durchsuchten Inhalt anzeigen -->
    <li class="item" v-for="Element in Undo-Liste" :key="item.name">
     <div Klasse="">
      <!-- Das Mehrfachauswahlfeld ist im deaktivierten Zustand „Falsch“ -->
     <input type="checkbox" v-model="item.done" />
     <!-- Der Standardstatus ist 0. Bei einem Doppelklick ist der Status 1 und der Inhalt wird tempEdit zugewiesen-->
     <span v-show="item.state==0" @dblclick="item.state=1;tempEdit=item.name">{{item.name}}</span>
     <!-- Der Inhalt des Eingabefelds ist der Wert von tempEdit. Wenn state=1 ist, wird das Eingabefeld angezeigt.
     Wenn Sie auf Esc klicken, wird der Status ausgeblendet und der Inhalt behält den ursprünglichen Wert ohne Änderungen bei.
     Wenn der Status beim Drücken der Eingabetaste 0 ist, wird das Eingabefeld ausgeblendet und das geänderte tempEdit wird item.name zugewiesen.
     Wenn der Status 0 ist und der Fokus verloren geht, wird das Eingabefeld ausgeblendet und das geänderte tempEdit wird item.name zugewiesen.
      -->
     <Eingabetyp="Text" v-Modell="tempEdit" v-Show="Artikel.Status==1" 
     @keyup.esc="item.state=0;tempEdit=item.name"
     @keyup.enter="item.state=0;item.name=tempEdit"
     @blur="item.state=0;item.name=tempEdit"
     />
     </div>
     <!-- Löscht den Inhalt, wenn Sie auf Löschen klicken -->
     <button type="button" @click="removeitem(item)" class="del">X</button>
    </li>
   </ul>
   <!-- Abgeschlossene Menge -->
   <h3>Abgeschlossen {{doneList.length}}</h3>
   <ul Klasse="Liste">
    <!-- Den fertigen Inhalt durchlaufen und anzeigen-->
    <li class="item" v-for="Element in erledigter Liste" :key="item.name">
     <div Klasse="">
      <!-- Das Mehrfachauswahlfeld befindet sich im ausgewählten True-Zustand -->
     <input type="checkbox" v-model="item.done" />
     <!-- Der Standardstatus ist 0. Bei einem Doppelklick ist der Status 1 und der Inhalt wird tempEdit zugewiesen-->
     <span v-show="item.state==0" @dblclick="item.state=1;tempEdit=item.name">{{item.name}}</span>
     <!-- Der Inhalt des Eingabefelds ist der Wert von tempEdit. Wenn state=1 ist, wird das Eingabefeld angezeigt.
     Wenn Sie auf Esc klicken, wird der Status ausgeblendet und der Inhalt behält den ursprünglichen Wert ohne Änderungen bei.
     Wenn der Status beim Drücken der Eingabetaste 0 ist, wird das Eingabefeld ausgeblendet und das geänderte tempEdit wird item.name zugewiesen.
     Wenn der Status 0 ist und der Fokus verloren geht, wird das Eingabefeld ausgeblendet und das geänderte tempEdit wird item.name zugewiesen.
      -->
     <Eingabetyp="Text" v-Modell="tempEdit" v-Show="Artikel.Status==1" 
     @keyup.esc="item.state=0;tempEdit=item.name"
     @keyup.enter="item.state=0;item.name=tempEdit;"
     @blur="item.state=0;item.name=tempEdit;"
     />
     </div>
     <!-- Löscht den Inhalt, wenn Sie auf Löschen klicken -->
     <button type="button" @click="removeitem(item)" class="del">X</button>
    </li>
   </ul>
  </div>
 </body>
 <script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
 <Skripttyp="text/javascript">
  var vm = neuer Vue({
   el:"#app",
   Daten(){
    zurückkehren {
     // Liste Liste // getItem dient zum Abrufen der lokal gespeicherten Daten.
     // || "[]" Wenn keine Array-Liste abgerufen werden kann, konvertieren Sie sie in eine leere Array-Liste: JSON.parse(localStorage.getItem("list")|| "[]"),
     // Temporärer Datenspeicher temp:'',
     // Temporärer Datenspeicherort für die Änderungsbox tempEdit:''
    }
   },
   Methoden:{
    // additem() hinzufügen{
     // Zurückkehren, wenn das Textfeld leer ist if(this.temp===""){return;}
     // Nach hinten hinzufügen this.list.push({
      Name:dieses.temp,
      fertig:falsch,
      Zustand: 0
     })
     // Löschen Sie das temporäre Feld this.temp="";
    },
    // löschen removeitem(item){
     // Popup-Fenster var flag = window.confirm ("Möchten Sie wirklich löschen?");
     wenn(Flagge){
      // Finde den Indexwert des Elements, das die Bedingungen erfüllt var ind=this.list.findIndex(value=>value.title===item.title);
      // splice löscht eins aus ind this.list.splice(ind,1);
     }
    }
   },
   berechnet:{
    // Berechnen Sie die Daten der abgeschlossenen und unfertigen Liste, indem Sie // Unfertige undolist(){ berechnen.
     // Array-Funktion filtern, wenn das Rückgabeergebnis wahr ist, werden die aktuell durchlaufenen Daten beibehalten // andernfalls werden sie herausgefiltert return this.list.filter(item=>!item.done);
     
    },
    // Abgeschlossen doneList(){
     gib diesen.Listenfilter zurück(Element=>Element.fertig);
    }
   },
   betrachten:{
    "Liste":{
     handler(){
      // setItem legt lokale Daten fest // JSON.stringify konvertiert JS-Objekt in JSON-String // JSON.prase konvertiert String in JS-Objekt localStorage.setItem("list",JSON.stringify(this.list))
     },
     tief:wahr,
    }
   }
  })
 </Skript>
</html>

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • Vuex kombiniert mit Speicher, um lokale Speicherung von Benutzerinformationen zu realisieren
  • Implementieren Sie den lokalen Vuex-Speicher mit vuex-persistedstate
  • Zusammenfassung der Probleme mit dem lokalen Speicher des Vue-Browsers
  • So ändern Sie Schriftarten in Vue und speichern Schriftarten lokal, ohne auf Online-Schriftbibliotheken zu verweisen
  • Vue generiert ein Token und speichert es im lokalen Speicher
  • So überwachen Sie den lokalen Speicher in Vue in Echtzeit

<<:  Lösung für das Problem, dass „order by“ in MySQL-Unterabfragen nicht wirksam ist

>>:  Die Bilder in HTML werden direkt durch base64-kodierte Strings ersetzt

Artikel empfehlen

Docker erstellt MySQL-Erklärung

1. MySQL-Image herunterladen Befehl: docker pull ...

8 Gründe, warum Sie die Xfce-Desktopumgebung für Linux verwenden sollten

Aus verschiedenen Gründen (einschließlich Neugier...

MySQL verwendet inet_aton und inet_ntoa, um IP-Adressdaten zu verarbeiten

Dieser Artikel stellt vor, wie Sie IP-Adressdaten...

Layui implementiert Beispielcode für Abfragen mit mehreren Bedingungen

Ich habe vor kurzem ein Dateisystem erstellt und ...

Detailliertes Tutorial zur Installation von mysql5.7.21 unter Windows

In diesem Artikel finden Sie das Installations-Tu...

Verwenden Sie js, um ein einfaches Schlangenspiel zu schreiben

In diesem Artikel wird der spezifische Code eines...

Kontinuierliche Bereitstellung mit Jenkins und Docker unter Docker

1. Was ist Continuous Delivery Der Ausgabeprozess...

Beispielcode für horizontales Balkendiagramm von Echarts Bar

Inhaltsverzeichnis Horizontales Balkendiagramm Da...

So erstellen Webdesigner Bilder für Retina-Displays

Besonderer Hinweis: Dieser Artikel wurde basieren...

Eine kurze Diskussion über zwei Strombegrenzungsmethoden in Nginx

Die Belastung wird im Allgemeinen während des Sys...

Beispiel für die Anpassung des Stils des Auswahlfelds für Formulardateien

Code kopieren Der Code lautet wie folgt: <!DOC...