Eine kurze Analyse des Unterschieds zwischen ref und toRef in Vue3

Eine kurze Analyse des Unterschieds zwischen ref und toRef in Vue3

1. ref wird kopiert, die Ansicht wird aktualisiert

Wenn Sie ref verwenden, um einen Eigenschaftswert in einem Objekt in responsive Daten umzuwandeln

Das Ändern der Antwortdaten hat keine Auswirkungen auf die Originaldaten.

Gleichzeitig wird die Ansicht aktualisiert.

Ref bedeutet Kopieren. Das Kopieren hat keine Auswirkungen auf die Originaldaten.

<Vorlage>
 <div>
    <div>
      <div>{{stateObj}}</div>
       <button @click="func1">Schaltfläche</button>
    </div>
 </div>
</Vorlage>
<Skript>
importiere {ref} von 'vue'
Standard exportieren {
  Name: "App",
  aufstellen(){
    let obj={name:"Alter",age:22}
    
    //Eine Eigenschaft im Objekt in responsive Daten umwandeln //anstatt das Objekt in responsive Daten umzuwandeln let stateObj=ref(obj.name)
    Funktion func1(){
      stateObj.value="Zhang San wird zu Li Si";
      //Die Originaldaten haben sich nicht geändert. Originaldaten obj {name: "张三", age: 22}
      console.log("Originaldatenobjekt", Objekt)

      //Die Antwortdaten haben sich geändert/**
      Reaktionsfähiges stateObj RefImpl {
          _rawValue: "Zhang San wird zu Li Si", _shallow: false,
          __v_isRef: true, _value: „Zhang San wird zu Li Si“
      }
      **/
      // Wird zu einem Ref-Objekt console.log("responsive stateObj",stateObj)

    }

    returniere {stateObj,func1}
},
}
</Skript>

2. toRef ist eine Referenz, die Ansicht wird nicht aktualisiert

Wenn toRef verwendet wird, um die Eigenschaften eines Objekts in responsive Daten umzuwandeln

Wenn wir die Antwortdaten ändern, wirkt sich dies auf die Originaldaten aus

Wenn die Daten über toRef erstellt werden, lösen die Daten die Ansicht nicht aus, nachdem der Wert geändert wurde

toRef ist eine Referenz; sie verweist auf die Eigenschaft im vorherigen Objekt

Wenn Sie es ändern, wirkt sich dies auf den Wert der Originaldaten aus.

<Vorlage>
 <div>
    <div>
      <div>{{Staat}}</div>
       <button @click="func1">Schaltfläche</button>
    </div>
 </div>
</Vorlage>
<Skript>
importiere { toRef } von 'vue'
Standard exportieren {
  Name: "App",
  aufstellen(){
    let obj={name:"Alter",age:22}
    //Konvertieren Sie einen Eigenschaftsnamen im Objekt in responsive Daten. //Anstatt das Objekt in responsive Daten umzuwandeln, let state=toRef(obj, 'name');
    console.log('toRef',Status)
    Funktion func1(){
      state.value="Ich bin Li Si";
      konsole.log('obj',obj)
      console.log('Status',Status)
    }
    returniere {Zustand,Funktion1}
  },
}
</Skript>

3. Fazit

Ref-Kopie, Änderung der Antwortdaten. Vorherige Daten werden nicht beeinflusst, die Schnittstelle wird sich ändern.

toRef-Referenz. Das Ändern der Antwortdaten wirkt sich auf die vorherigen Daten aus und die Schnittstelle wird nicht aktualisiert.

Anwendungsfälle für toRef

Wenn Sie Antwortdaten mit Originaldaten verknüpfen möchten.

Und nachdem Sie die Antwortdaten aktualisiert haben, möchten Sie nicht, dass die Ansicht aktualisiert wird. Dann können Sie toRef verwenden.

Zusammenfassung:

Der Unterschied zwischen ref und toRef

(1) Das Wesen von ref besteht im Kopieren, und das Ändern der Antwortdaten wirkt sich nicht auf die Originaldaten aus. Das Wesen von toRef besteht in einer Referenzbeziehung, und das Ändern der Antwortdaten wirkt sich auf die Originaldaten aus

(2) Wenn sich die Ref-Daten ändern, wird die Schnittstelle automatisch aktualisiert; wenn sich die ToRef-Daten ändern, wird die Schnittstelle nicht automatisch aktualisiert

(3) Der an toRef übergebene Verweis ist unterschiedlich. toRef empfängt zwei Parameter, der erste Parameter ist welches Objekt und der zweite Parameter ist welches Attribut des Objekts

Zusammenfassen

Dies ist das Ende dieses Artikels über den Unterschied zwischen ref und toRef in Vue3. Weitere Informationen zum Unterschied zwischen Vue3 ref und toRef finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • setup+ref+reactive implementiert Vue3-Reaktionsfähigkeit
  • Detaillierte Erklärung des Ref-Attributs von Vue
  • Referenzen und Referenzdetails in Vue3
  • Einführung in die reaktive Funktion toRef-Funktion ref-Funktion in Vue3
  • Erläuterung des Vue.js $refs-Anwendungsfalls
  • Detaillierte Analyse des Unterschieds zwischen Ref und Reactive in Vue3.0
  • Detaillierte Erklärung und Erweiterung von ref und reactive in Vue3
  • Die vollständige Verwendung von Setup, Ref und Reactive in der Vue3-Kombinations-API
  • Verwendung und Demonstration von ref in Vue

<<:  Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.15

>>:  CentOS7 ermöglicht MySQL8 Master-Slave-Backup und täglich geplantes Voll-Backup (empfohlen)

Artikel empfehlen

Detaillierte Erklärung des Marquee-Attributs in HTML

Dieses Tag ist nicht Teil von HTML3.2 und wird nu...

Manuelle Implementierung des bidirektionalen Datenbindungsprinzips von Vue2.0

In einem Satz: Datenentführung (Object.defineProp...

Beispielcode für HTML-Listenfeld, Textfeld und Dateifeld

Dropdown-Feld, Textfeld, Dateifeld Der obere Teil...

HTML n Möglichkeiten zum Erreichen eines alternativen Farbcode-Beispielcodes

In diesem Artikel wird hauptsächlich der Beispiel...

CSS Houdini erzielt einen dynamischen Welleneffekt

CSS Houdini gilt als die aufregendste Innovation ...

Sortierfunktion für HTML-Tabellen per Mausklick

Effektbild: 1. Dateien importieren <script src...

Eine kurze Diskussion über vier Lösungen für Vue Single Page SEO

Inhaltsverzeichnis 1.Bereitstellung der serversei...

So verweisen Sie im WeChat-Applet wxss auf externe CSS-Dateien und Iconfonts

Ursache So importieren Sie externe Dateien in ein...

Auszeichnungssprache - für

Klicken Sie hier, um zum Abschnitt „HTML-Tutorial“...

Für die Verwendung des Docker-Befehls ist kein Sudo erforderlich

Da der Docker-Daemon an den Unix-Socket des Hosts...

Das WeChat-Applet implementiert einen Videoplayer, der einen Bullet-Screen sendet

In diesem Artikel wird der spezifische Code für d...

So führen Sie mehrere MySQL-Instanzen unter Windows aus

Vorwort Unter Windows können Sie mehrere MySQL-In...

So ändern Sie MySQL-Berechtigungen, um Hosts den Zugriff zu ermöglichen

Aktivieren Sie Remote-Zugriffsrechte für MySQL My...