Maison > interface Web > js tutoriel > Pourquoi les fonctions fléchées ne fonctionnent-elles pas comme prévu dans les propriétés calculées de Vue ?

Pourquoi les fonctions fléchées ne fonctionnent-elles pas comme prévu dans les propriétés calculées de Vue ?

Susan Sarandon
Libérer: 2024-11-24 20:47:31
original
889 Les gens l'ont consulté

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

Fonctions fléchées dans les propriétés calculées de Vue

Problème :

Utilisation des fonctions fléchées dans Vue calculée les propriétés peuvent provoquer un comportement inattendu. Après avoir modifié les méthodes d'une propriété calculée en fonctions fléchées, les couleurs des éléments DOM ne changent pas, même si les valeurs des données sous-jacentes changent toujours avec succès.

Réponse :

Ce problème se pose car les fonctions fléchées ne le lient pas à l'instance Vue dans laquelle la propriété calculée est définie. Ce comportement est cohérent avec d'autres contextes dans lesquels les fonctions fléchées sont utilisées, comme dans les méthodes d'instance.

Selon la documentation Vue :

"N'utilisez pas de fonctions fléchées sur une propriété d'instance ou un rappel (par exemple vm.$watch('a', newVal => this.myMethod())). Comme les fonctions fléchées sont liées au contexte parent, ce ne sera pas l'instance de Vue comme vous vous en douteriez et this.myMethod() ne sera pas défini."

Résolution :

Pour résoudre ce problème, évitez d'utiliser des fonctions fléchées dans les propriétés calculées ou les méthodes d'instance. Utilisez plutôt la syntaxe de fonction traditionnelle (par exemple, function() { ... }) pour la lier correctement à l'instance Vue.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal