So verstehen Sie den einfachen Speichermodus der Statusverwaltung von Vue

So verstehen Sie den einfachen Speichermodus der Statusverwaltung von Vue

Überblick

Die Implementierungsidee des Store-Statusverwaltungsmodus ist sehr einfach: Sie besteht darin, ein Store-Objekt mit einem Statusattribut zum Speichern gemeinsam genutzter Daten und Methoden zum Bedienen dieser gemeinsam genutzten Daten zu definieren. In der Komponente werden die gemeinsam genutzten Daten von store.state als Teil oder als Gesamtheit der Daten verwendet. Beim Ändern der gemeinsam genutzten Daten im store.state-Objekt muss die vom Store bereitgestellte Schnittstelle aufgerufen werden, um die gemeinsam genutzten Daten zu ändern.

Nachfolgend finden Sie eine einfache To-Do-Liste-Demo zur Einführung in den Store-Statusverwaltungsmodus.

1. Definieren Sie store.js

//store.js
exportiere const store = {
    Zustand: {
        alle Aufgaben:
            {text: 'Chinesisch-Hausaufgaben schreiben', erledigt: false},
            {text: 'Mathetest machen', erledigt: false}
        ]
    },
    addTodo(str){
        const obj = {text: str, fertig: false}
        dieser.Status.todos.push(Objekt)
    },
    setFertig(index){
        dieser.Zustand.todos[index].done = true
    }
}

2. Komponenten, die store.js verwenden

//A.vue
<Vorlage>
    <div Klasse="A">
        Ich bin Komponente A<ul>
           <li v-for="(Aufgaben,Index) in Aufgaben" 
           :Schlüssel="index" :Klasse="todo.done?'done':''" @click="setDone(index)">
           {{todo.text}}
           </li>
       </ul>
    </div>
</Vorlage>

<Skript>
importiere {store} aus '../store/store.js'
Standard exportieren {
    Name: "A",
    Daten(){
        store.state zurückgeben
    },
    Methoden: {
        setFertig(index){
            store.setDone(index)
        }
    }
}
</Skript>

<Stilbereich>
.A{
    Hintergrund: rot;
    Farbe: weiß;
    Polsterung: 20px;
}
.A li.done{
    Hintergrund: grün;
}
</Stil>
//B.vue
<Vorlage>
    <div Klasse="B">
        <div>
            Ich bin Komponente B, trage die Aufgabe in das Eingabefeld unten ein und füge die Aufgabe in Komponente A hinzu</div>
        <Eingabetyp="Text" v-Modell="Text">
        <button @click="addTodo">Aufgabe hinzufügen</button>
    </div>
</Vorlage>

<Skript>
importiere {store} aus '../store/store.js'
Standard exportieren {
    Name: 'B',
    Daten(){
        zurückkehren {
            text: ''
        }
    },
    Methoden:{
        addTodo(){
            wenn(dieser.text){
                store.addTodo(dieser.text)
            }
        }
    }
}
</Skript>

<Stilbereich>
.B{
    Hintergrund: gelb;
    Polsterung: 20px;
}
</Stil>
//App.vue
<Vorlage>
  <div id="app">
    <A />
    <B />
  </div>
</Vorlage>

<Skript>

importiere A aus './components/A.vue'
importiere B aus './components/B.vue'

Standard exportieren {
  Name: "App",
  Komponenten:
    A,
    B
  }
}
</Skript>

3. Ergebnisse erzielen

Es ist ersichtlich, dass die in Komponente A angezeigten Daten in Komponente B hinzugefügt und geändert werden. Dabei handelt es sich um eine Datenkommunikation durch Datenfreigabe. Auf diese Weise wird der einfache Speichermodus verwendet.

Oben finden Sie Einzelheiten zum Verständnis des Speichermodus der einfachen Statusverwaltung von Vue. Weitere Informationen zum Speichermodus der einfachen Statusverwaltung von Vue finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • So verwenden Sie Provide zur Implementierung der Statusverwaltung in Vue3
  • Detailliertes Beispiel für die Statusverwaltung der Hilfsfunktion der Vue-Frontend-Entwicklung
  • Der praktische Prozess des Login-Status-Managements im vuex-Projekt
  • Erfahren Sie schnell, wie Sie mit der Vuex-Statusverwaltung in Vue3.0 beginnen
  • Anwendung der MapState-Idee in Vuex
  • So verwenden Sie Vuex in einem Vue-Projekt
  • Verwendung des Vuex-Namespace
  • Vue-Statusverwaltung: Verwendung von Pinia statt Vuex

<<:  Ursachenanalyse und Lösung des E/A-Fehlers beim Löschen einer MySQL-Tabelle

>>:  Ubuntu-Grundlagen-Tutorial: apt-get-Befehl

Artikel empfehlen

MySQL Master-Slave-Replikationsprinzip und zu beachtende Punkte

Vorne geschrieben Ich habe kürzlich ein spezielle...

Erkennen Sie den CSS-Ladeeffekt nach dem Klicken auf die Schaltfläche

Da es in dem Produkt meiner Firma eine Schaltfläc...

Einführung in den Swap-Speicher des Linux-Systems

Swap-Speicher ist heutzutage ein gängiger Aspekt ...

border-radius-Methode zum Hinzufügen abgerundeter Ränder zu Elementen

border-radius:10px; /* Alle Ecken sind mit einem ...

Json-String + Cookie + lokaler Speicher in JS

Inhaltsverzeichnis 1.JSON-Zeichenfolge 1.1Json-Sy...

Implementierungsbeispiel für den Linux-Befehl „tac“

1. Befehlseinführung Der Befehl tac (umgekehrte R...

IE6/7 wird ein Chaos: Problem mit der Höhe leerer Textknoten

Vorwort: Verwenden Sie die Debugleiste, um den Dok...

Was ist eine HTML-Datei? So öffnen Sie eine HTML-Datei

HTML steht für Hypertext Markup Language. Heutzut...

MySQL-Joinpufferprinzip

Inhaltsverzeichnis 1. MySQL-Joinpuffer 2. JoinBuf...

Deaktivieren der AutoVervollständigen-Funktion im Eingabefeld

Jetzt können wir ein Eingabeattribut namens „Autov...

Detaillierte Erläuterung des MySQL-Download- und Installationsprozesses

1: MySql herunterladen Offizielle Download-Adress...