Heim  >  Artikel  >  Web-Frontend  >  So verwenden Sie $watchEffect in Vue, um Abhängigkeiten automatisch zu erfassen

So verwenden Sie $watchEffect in Vue, um Abhängigkeiten automatisch zu erfassen

WBOY
WBOYOriginal
2023-06-11 09:52:031397Durchsuche

In Vue ist $watchEffect eine API zur Überwachung reaktionsfähiger Datenänderungen und kann Abhängigkeiten automatisch erfassen, ohne die zu überwachenden Daten manuell anzugeben. In Vue 3 ersetzt $watchEffect die Methode $watch in Vue 2 und wird zu einer bequemeren und effizienteren Methode zur reaktionsfähigen Datenüberwachung. Im Folgenden wird erläutert, wie Sie mit $watchEffect in Vue Abhängigkeiten automatisch erfassen.

  1. Erstellen Sie eine Vue-Instanz

Zuerst müssen wir eine Vue-Instanz erstellen. Es kann über die Methode Vue.createApp() erstellt werden. Diese Methode gibt eine Anwendungsinstanz-App zurück.

const app = Vue.createApp({
  data() {
    return {
      count: 0
    }
  }
})
  1. Verwenden Sie $watchEffect, um Datenänderungen zu überwachen

Als nächstes verwenden wir $watchEffect, um Änderungen in der Datenanzahl zu überwachen. Wenn sich der Wert von count ändert, führt $watchEffect automatisch die relevanten Nebeneffektfunktionen aus und sammelt Abhängigkeiten.

app.mount('#app')

app.config.globalProperties.$watchEffect(() => {
  console.log('count is', app._data.count)
})

Hier verwenden wir die Nebeneffektfunktion, um einfach den Wert der aktuellen Zählung auszudrucken. In tatsächlichen Projektanwendungen können Nebeneffektfunktionen komplexere Vorgänge ausführen, z. B. das Aktualisieren von DOM-Knoten usw. $watchEffect erfasst automatisch alle reaktiven Eigenschaften in der Vue-Instanz (einschließlich berechneter Eigenschaften, Methoden usw.) und führt automatisch Nebeneffektfunktionen aus, wenn sich diese Eigenschaftsdaten ändern. Auf diese Weise müssen wir die zu überwachenden Daten nicht manuell angeben und auch die Sammlung von Abhängigkeiten nicht manuell verwalten.

  1. Responsive Daten ändern

Abschließend können wir versuchen, den Wert von count zu ändern, um zu sehen, ob $watchEffect ordnungsgemäß funktionieren kann.

setTimeout(() => {
  app._data.count += 1
}, 1000)

Die setTimeout-Funktion wird verwendet, um eine Zeitspanne zu verzögern, um die Auswirkung von Datenänderungen zu simulieren. Wenn sich der Wert von count ändert, führt $watchEffect automatisch die Nebeneffektfunktion aus und gibt den neuen Zählwert aus.

Anhand dieses einfachen Beispiels können wir sehen, dass $watchEffect uns dabei helfen kann, Abhängigkeiten automatisch zu erfassen und zugehörige Nebeneffektfunktionen auszuführen, wenn sich die Daten ändern, wodurch die Mühe einer manuellen Abhängigkeitsverwaltung vermieden wird. In tatsächlichen Projekten ist $watchEffect eine sehr praktische, reaktionsfähige Datenüberwachungs-API, die die Entwicklungseffizienz erheblich verbessern und die Fehlerwahrscheinlichkeit verringern kann.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie $watchEffect in Vue, um Abhängigkeiten automatisch zu erfassen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn