Heim > Web-Frontend > js-Tutorial > Warum funktionieren Pfeilfunktionen in Vue-berechneten Eigenschaften nicht wie erwartet?

Warum funktionieren Pfeilfunktionen in Vue-berechneten Eigenschaften nicht wie erwartet?

Susan Sarandon
Freigeben: 2024-11-24 20:47:31
Original
844 Leute haben es durchsucht

Why Don't Arrow Functions Work as Expected in Vue Computed Properties?

Pfeilfunktionen in von Vue berechneten Eigenschaften

Problem:

Verwendung von Pfeilfunktionen in von Vue berechneten Eigenschaften Eigenschaften können zu unerwartetem Verhalten führen. Nach dem Ändern der Methoden in einer berechneten Eigenschaft in Pfeilfunktionen ändern sich die Farben der DOM-Elemente nicht, auch wenn die zugrunde liegenden Datenwerte weiterhin erfolgreich umgeschaltet werden.

Antwort:

Dieses Problem entsteht, weil Pfeilfunktionen dies nicht an die Vue-Instanz binden, in der die berechnete Eigenschaft definiert ist. Dieses Verhalten stimmt mit anderen Kontexten überein, in denen Pfeilfunktionen verwendet werden, beispielsweise in Instanzmethoden.

Gemäß der Vue-Dokumentation:

„Verwenden Sie keine Pfeilfunktionen für eine Instanzeigenschaft oder einen Instanzrückruf.“ (z. B. vm.$watch('a', newVal => this.myMethod())) Da Pfeilfunktionen an den übergeordneten Kontext gebunden sind, ist dies nicht die Vue-Instanz, wie Sie es tun würden „expect“ und „this.myMethod()“ werden undefiniert sein. Verwenden Sie stattdessen die herkömmliche Funktionssyntax (z. B. function() { ... }), um diese korrekt an die Vue-Instanz zu binden.

Das obige ist der detaillierte Inhalt vonWarum funktionieren Pfeilfunktionen in Vue-berechneten Eigenschaften nicht wie erwartet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage