Die Composition API implementiert Schritte zur Wiederverwendung logischer Elemente:
Definieren Sie beispielsweise eine Methode zum Abrufen der aktuellen Mausposition Die erste Möglichkeit besteht darin, die durch ref definierte useMousePosition direkt zu verwenden: Auf diese Weise können sowohl Exporte als auch Importe nach Belieben destrukturiert werden // useMousePosition.js importiere { ref, onMounted, onUnmounted } von 'vue' // 1. Definieren Sie eine Funktion, extrahieren Sie die Logik und nennen Sie sie useXXX Funktion useMousePosition() { //Verwende ref um const x = ref(0) zu definieren konstant y = ref(0) Funktion update(e) { Konsole.log(x.Wert, y.Wert); x.Wert = e.SeiteX y.Wert = e.SeiteY } beimMounted(() => { console.log('Beginnen Sie mit der Überwachung von Mausbewegungsereignissen'); window.addEventListener('Mausbewegung', aktualisieren) }) beiUnmountet(() => { console.log('Überwachung von Maus-Scroll-Ereignissen entfernen'); window.removeEventListener('Mausbewegung', aktualisieren) }) zurückkehren { X, j } } // Diese Funktion exportieren export default useMousePosition <!-- Diese Methode kann in jeder Komponente aufgerufen werden--> <Vorlage> <p>Mausposition: {{x}}, {{y}}</p> </Vorlage> <Skript> importiere useMousePosition aus './useMousePosition' Standard exportieren { Name: 'Mausposition', aufstellen() { // useMousePosition verwendet ref um Variablen zu definieren, die dekonstruiert werden können const { x, y } = useMousePosition() konsole.log(x, y) zurückkehren { x, y } } } </Skript> Die zweite Methode besteht darin, reaktiv zu verwenden, um das Mauskoordinatenobjekt zu definieren. Diese Exportmethode kann beim Importieren in eine Komponente nicht destrukturiert werden. importiere { onMounted, onUnmounted, reaktiv } von 'vue' Exportfunktion useMousePosition2() { // Verwenden Sie reactive, um const mouse = reactive({ zu definieren. x: 0, j: 0 }) Funktion update(e) { Maus.x = e.SeiteX Maus.y = e.SeiteY } beimMounted(() => { console.log('Beginnen Sie mit der Überwachung von Mausbewegungsereignissen'); window.addEventListener('Mausbewegung', aktualisieren) }) beiUnmountet(() => { console.log('Überwachung von Maus-Scroll-Ereignissen entfernen'); window.removeEventListener('Mausbewegung', aktualisieren) }) zurückkehren { Maus } } <Vorlage> <!-- Objektmethode zum Anzeigen von Informationen verwenden --> <p>Mausposition2: {{mouse.x}}, {{mouse.y}}</p> </Vorlage> <Skript> importiere { useMousePosition2 } von './useMousePosition' Standard exportieren { Name: 'Mausposition', aufstellen() { // useMousePosition2 ist mit reactive definiert, daher ist eine Dekonstruktion nicht möglich const { mouse } = useMousePosition2() zurückkehren { Maus } } } </Skript> Die dritte Methode ist die Verwendung von toRefs Mit dieser Methode können Sie reaktive Objekte in Ref-Objekte zerlegen. Exportfunktion useMousePosition3() { // Verwenden Sie reactive, um const mouse = reactive({ zu definieren. x: 0, j: 0 }) Funktion update(e) { Maus.x = e.SeiteX Maus.y = e.SeiteY } beimMounted(() => { console.log('Beginnen Sie mit der Überwachung von Mausbewegungsereignissen'); window.addEventListener('Mausbewegung', aktualisieren) }) beiUnmountet(() => { console.log('Überwachung von Maus-Scroll-Ereignissen entfernen'); window.removeEventListener('Mausbewegung', aktualisieren) }) //Verwende hier toRefs zum Dekonstruieren in ein Ref-Objekt return toRefs(mouse) } <Vorlage> <p>Mausposition: {{x}}, {{y}}</p> </Vorlage> <Skript> importiere { useMousePosition3 } von './useMousePosition' Standard exportieren { Name: 'Mausposition', aufstellen() { // Benutze reactive, um das Mauskoordinatenobjekt zu definieren, und dekonstruiere es dann über toRefs const { x, y } = useMousePosition() in ein Ref-Objekt. konsole.log(x, y) zurückkehren { x, y } } } </Skript> Alle drei Methoden können implementiert werden, aber wenn wir sie im Allgemeinen verwenden, geben wir das Ref-Objekt zurück. Daher wird empfohlen, die erste und dritte Methode zu verwenden und zu versuchen, die zweite Methode nicht zu verwenden. Dies ist das Ende dieses Artikels über die Implementierung der Logikwiederverwendung mit der Vue3-Kompositions-API. Weitere Informationen zur Logikwiederverwendung der Vue3-Kompositions-API finden Sie in früheren Artikeln auf 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:
|
>>: Tutorial-Analyse der Schnellinstallation von mysql5.7 basierend auf centos7
Zeitfelder werden häufig bei der Datenbanknutzung...
Sollte dieser Artikel Fehler enthalten oder du An...
MySQL InnoDB-Überwachung (Systemebene, Datenbanke...
Ein ES-Image vom Docker-Hub heruntergeladen, Vers...
Inhaltsverzeichnis 1. Einleitung 2. Haupttext 2.1...
Inhaltsverzeichnis Vorwort 1. Vorbereitung 2. Tat...
Inhaltsverzeichnis MySQL initialisieren MySQL-Die...
Ergebnis:Implementierungscode html <nav class=...
In diesem Artikel wird der spezifische JavaScript...
Code kopieren Der Code lautet wie folgt: <span...
1. Wenn ffmpeg Videodateien überträgt, können die...
Bei der Autorisierung geht es darum, einem Benutz...
Wenn Sie Docker verwenden, stellen Sie möglicherw...
Inhaltsverzeichnis 1. setState() Beschreibung 1.1...
#docker ps-Check, alle Ports sind zugeordnet CONT...