Heim Web-Frontend View.js So optimieren Sie gemeinsam die Anwendungsleistung mithilfe der berechneten Attribute und Überwachungsattribute von Vue

So optimieren Sie gemeinsam die Anwendungsleistung mithilfe der berechneten Attribute und Überwachungsattribute von Vue

Jul 18, 2023 pm 04:25 PM
vue computed watch

So optimieren Sie gemeinsam die Anwendungsleistung mithilfe der berechneten Eigenschaften und Überwachungseigenschaften von Vue.

Einführung:
Vue ist ein fortschrittliches JavaScript-Framework zum Erstellen von Benutzeroberflächen. Sein Kernkonzept besteht darin, Daten und Ansichten bidirektional zu binden. In der tatsächlichen Entwicklung müssen wir häufig einige Daten verarbeiten, die eine Echtzeitberechnung oder -überwachung erfordern, z. B. Formularvalidierung, Datenfilterung usw. Um die Anwendungsleistung zu verbessern, stellt Vue berechnete Attribute und Überwachungsattribute bereit, um diese Anforderungen gemeinsam zu bewältigen. In diesem Artikel wird die Verwendung berechneter Attribute und Überwachungsattribute zur Optimierung der Anwendungsleistung vorgestellt und entsprechende Codebeispiele gegeben.

1. Verwendung des berechneten Attributs
Das berechnete Attribut ermöglicht es uns, einige Eigenschaften basierend auf reaktionsfähigen Abhängigkeiten zu deklarieren und die Berechnungslogik darin zu kapseln. Vue aktualisiert die Werte berechneter Eigenschaften automatisch basierend auf Änderungen in zugehörigen Abhängigkeiten, um sicherzustellen, dass sie immer auf dem neuesten Stand sind.

1.1 Grundlegende Syntax
Das Deklarieren des berechneten Attributs in einer Vue-Komponente ist sehr einfach. Sie müssen lediglich eine Funktion im berechneten Attribut der Komponente definieren. Zum Beispiel:

computed: {
    fullName() {
        return `${this.firstName} ${this.lastName}`;
    }
}
Nach dem Login kopieren

Im obigen Code definieren wir ein berechnetes Attribut fullName, das den vollständigen Namen nach der Kombination aus Vorname und Nachname zurückgibt.

1.2 Computational Cache
Ein wichtiges Merkmal des berechneten Attributs ist das Computational Caching. Wenn sich die Reaktionsdaten, von denen ein berechnetes Attribut abhängt, ändern, wird das berechnete Attribut neu berechnet und die Berechnungsergebnisse werden zwischengespeichert. Wenn beim nächsten Mal auf die berechnete Eigenschaft zugegriffen wird und sich keine zugehörigen Abhängigkeiten geändert haben, gibt Vue den zwischengespeicherten Wert ohne Neuberechnung direkt zurück.

Dieser Berechnungs-Cache-Mechanismus verbessert die Leistung erheblich, insbesondere wenn berechnete Attribute große Rechenressourcen erfordern, wie z. B. Array-Filtervorgänge.

1.3 Beispiel
Das Folgende ist ein Beispielcode, der das berechnete Attribut verwendet:

<template>
  <div>
    <input v-model="firstName" type="text" placeholder="请输入姓">
    <input v-model="lastName" type="text" placeholder="请输入名">
    <p>{{ fullName }}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      firstName: '',
      lastName: ''
    };
  },
  computed: {
    fullName() {
      return `${this.firstName} ${this.lastName}`;
    }
  }
};
</script>
Nach dem Login kopieren

Im obigen Code binden wir bidirektional zwei Eingabeelemente und das Datenattribut der Komponente über die V-Modell-Direktive. Verwenden Sie dann {{ fullName }} in der Vorlage, um die Berechnungsergebnisse anzuzeigen. Wenn sich firstName oder lastName ändert, aktualisiert Vue automatisch den Wert von fullName und rendert das aktualisierte Ergebnis auf der Seite.

2. Verwendung des Überwachungsattributs
Das Überwachungsattribut ermöglicht es uns, eine bestimmte Datenänderung zu überwachen und entsprechende Vorgänge durchzuführen, wenn sich die Daten ändern. Im Gegensatz zum berechneten Attribut führt das Watch-Attribut keine Berechnungen durch, sondern führt eine benutzerdefinierte Logik aus, nachdem sich die Daten geändert haben.

2.1 Grundlegende Syntax
Die Deklaration des Watch-Attributs in der Vue-Komponente ist ebenfalls sehr einfach. Sie müssen lediglich eine Funktion im Watch-Attribut der Komponente definieren. Zum Beispiel:

watch: {
    firstName(newValue, oldValue) {
        console.log(`firstName从${oldValue}变为${newValue}`);
    }
}
Nach dem Login kopieren

Im obigen Code definieren wir ein Überwachungsattribut, um die Änderung von Vorname zu überwachen und die Werte vor und nach der Änderung auszugeben, wenn sie sich ändert.

2.2 Deep Monitoring
Standardmäßig überwacht Vue nur Änderungen in direkten Eigenschaften von Objekten oder Arrays. Wenn Sie Änderungen in allen Attributen in einem Objekt oder Array genau überwachen müssen, können Sie das Deep-Attribut im Watch-Attribut verwenden. Zum Beispiel:

watch: {
    obj: {
        handler(newValue, oldValue) {
            console.log('obj发生变化');
        },
        deep: true
    }
}
Nach dem Login kopieren

Im obigen Code überwachen wir die Änderungen eines Objekts namens obj genau. Wenn sich ein Attribut in obj ändert, wird die entsprechende Verarbeitungsfunktion ausgelöst. Dies ist nützlich, um Änderungen an Objekten abzuhören.

2.3 Asynchrone Überwachung
Manchmal möchten wir nach Datenänderungen einige asynchrone Vorgänge ausführen, z. B. das Senden von Anforderungen oder das Aktualisieren von Caches. Vue ermöglicht die Definition einer asynchronen Funktion namens Handler im Watch-Attribut, um diese Situation zu bewältigen. Beispiel:

watch: {
    firstName(newValue, oldValue) {
        this.debouncedGetData();
    }
},
methods: {
    debouncedGetData: debounce(function() {
        // 异步操作
    }, 500)
}
Nach dem Login kopieren

Im obigen Code verwenden wir die Debounce-Funktion in der Lodash-Bibliothek, um die Häufigkeit des Aufrufs von this.debouncedGetData zu begrenzen und sicherzustellen, dass innerhalb von 500 Millisekunden nur ein asynchroner Vorgang ausgeführt wird.

3. Kollaborative Nutzung von berechneten Attributen und Überwachungsattributen
Berechnete Attribute und Überwachungsattribute können gemeinsam verwendet werden und schließen sich nicht gegenseitig aus. In der tatsächlichen Entwicklung können wir je nach Bedarf flexibel eine der beiden auswählen oder beide gleichzeitig verwenden.

Bei Verwendung des berechneten Attributs müssen Sie die Eigenschaften des Berechnungscache berücksichtigen, der für Ergebnisse geeignet ist, die auf anderen reaktionsfähigen Datenberechnungen basieren. Bei Verwendung des Watch-Attributs werden normalerweise Änderungen in den Reaktionsdaten überwacht und entsprechende Vorgänge ausgeführt. Dies eignet sich für Szenarien, in denen eine sofortige Reaktion auf Datenänderungen erforderlich ist.

Zum Beispiel können wir das berechnete Attribut verwenden, um den Gesamtpreis eines Warenkorbs zu berechnen:

computed: {
    totalPrice() {
        return this.cart.reduce((total, product) => total + product.price * product.quantity, 0);
    }
}
Nach dem Login kopieren

Und das Watch-Attribut verwenden, um die Änderung der Menge eines Produkts im Warenkorb zu überwachen und den Gesamtpreis zu aktualisieren, wenn es passiert Änderungen:

watch: {
    'cart': {
        handler(newValue, oldValue) {
            this.totalPrice = this.cart.reduce((total, product) => total + product.price * product.quantity, 0);
        },
        deep: true
    }
}
Nach dem Login kopieren

Im obigen Code überwachen wir Änderungen im Warenkorb (Warenkorb). Wenn sich die Menge eines Produkts im Warenkorb ändert, wird der Gesamtpreis (totalPrice) neu berechnet und aktualisiert.

Schlussfolgerung:
In der Vue-Entwicklungspraxis kann die rationelle Verwendung berechneter Attribute und Überwachungsattribute die Anwendungsleistung und Entwicklungseffizienz verbessern. Das berechnete Attribut kann Rechenressourcen einsparen und komplexe Geschäftslogik implementieren, während das watch-Attribut Datenänderungen überwachen und entsprechende Vorgänge ausführen kann, um bestimmte Anforderungen zu erfüllen. Die flexible Verwendung dieser beiden Funktionen je nach Situation kann den Code prägnanter und eleganter machen.

Das obige ist der detaillierte Inhalt vonSo optimieren Sie gemeinsam die Anwendungsleistung mithilfe der berechneten Attribute und Überwachungsattribute von Vue. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verwenden Sie Bootstrap in Vue So verwenden Sie Bootstrap in Vue Apr 07, 2025 pm 11:33 PM

Die Verwendung von Bootstrap in Vue.js ist in fünf Schritte unterteilt: Startstrap installieren. Bootstrap in main.js. Verwenden Sie die Bootstrap -Komponente direkt in der Vorlage. Optional: benutzerdefinierter Stil. Optional: Verwenden Sie Plug-Ins.

So fügen Sie Funktionen zu Schaltflächen für Vue hinzu So fügen Sie Funktionen zu Schaltflächen für Vue hinzu Apr 08, 2025 am 08:51 AM

Sie können der VUE -Taste eine Funktion hinzufügen, indem Sie die Taste in der HTML -Vorlage an eine Methode binden. Definieren Sie die Methode und schreiben Sie die Funktionslogik in der VUE -Instanz.

So verweisen Sie auf die JS -Datei mit Vue.js So verweisen Sie auf die JS -Datei mit Vue.js Apr 07, 2025 pm 11:27 PM

Es gibt drei Möglichkeiten, sich auf JS -Dateien in Vue.js zu beziehen: Geben Sie den Pfad direkt mit dem & lt; Skript & gt an. Etikett;; Dynamischer Import mit dem montierten () Lebenszyklushaken; und importieren über die Vuex State Management Library.

So verwenden Sie Watch in Vue So verwenden Sie Watch in Vue Apr 07, 2025 pm 11:36 PM

Mit der Watch -Option in Vue.js können Entwickler auf Änderungen in bestimmten Daten anhören. Wenn sich die Daten ändert, löst sich eine Rückruffunktion aus, um Aktualisierungsansichten oder andere Aufgaben auszuführen. Zu den Konfigurationsoptionen gehören unmittelbar, die festlegen, ob ein Rückruf sofort ausgeführt werden soll, und Deep, das feststellt, ob Änderungen an Objekten oder Arrays rekursiv anhören sollen.

Was bedeutet VUE Multi-Page-Entwicklung? Was bedeutet VUE Multi-Page-Entwicklung? Apr 07, 2025 pm 11:57 PM

VUE Multi-Page-Entwicklung ist eine Möglichkeit, Anwendungen mithilfe des Vue.js-Frameworks zu erstellen, in dem die Anwendung in separate Seiten unterteilt ist: Code-Wartung: Die Aufteilung der Anwendung in mehrere Seiten kann das Verwalten und Wartungsbereich erleichtern. Modularität: Jede Seite kann als separates Modul für eine einfache Wiederverwendung und den Austausch verwendet werden. Einfaches Routing: Die Navigation zwischen Seiten kann durch einfache Routing -Konfiguration verwaltet werden. SEO -Optimierung: Jede Seite hat eine eigene URL, die SEO hilft.

So kehren Sie von Vue zur vorherigen Seite zurück So kehren Sie von Vue zur vorherigen Seite zurück Apr 07, 2025 pm 11:30 PM

VUE.JS hat vier Methoden, um zur vorherigen Seite zurückzukehren: $ router.go (-1) $ router.back () verwendet & lt; Router-Link to = & quot;/& quot; Komponentenfenster.history.back () und die Methodenauswahl hängt von der Szene ab.

So verwenden Sie Vue Traversal So verwenden Sie Vue Traversal Apr 07, 2025 pm 11:48 PM

Es gibt drei gängige Methoden für Vue.js, um Arrays und Objekte zu durchqueren: Die V-für-Anweisung wird verwendet, um jedes Element zu durchqueren und Vorlagen zu rendern; Die V-Bind-Anweisung kann mit V-für dynamisch Attributwerte für jedes Element verwendet werden. und die .MAP -Methode kann Array -Elemente in Neuarrays umwandeln.

Wie man einen Tag zum Vue springt Wie man einen Tag zum Vue springt Apr 08, 2025 am 09:24 AM

Zu den Methoden zum Implementieren des Sprung eines Tags in VUE gehören: Verwenden des A -Tags in der HTML -Vorlage, um das HREF -Attribut anzugeben. Verwenden Sie die Router-Link-Komponente des Vue-Routings. Verwenden Sie dies. $ Router.push () Methode in JavaScript. Parameter können durch den Abfrageparameter weitergeleitet werden, und Routen sind in den Routeroptionen für dynamische Sprünge konfiguriert.

See all articles