Le code ci-dessous permet de créer une data qui sera utilisable dans un template de vuejs. Elle a pour nom testData et comme valeur la chaîne de caractère "data".
Maintenant, nous allons utiliser le même code, mais cette fois-ci nous ajouterons une valeur dans computed.
À première vue, mis à part la manière de les déclarer, on a l’impression qu’il n’y a pas de différences. Mais ce n’est pas le cas, il y a bien des différences entre data et computed.
Dans la logique (script) si j’essaye de modifier la valeur dans la partie data cela fonctionnera. Mais impossible d’utiliser la même méthode pour modifier les données dans computed car cela ne fonctionnera pas. L’exemple ci-dessous nous le prouve.
J’utilise ici mounted
qui exécute le code JavaScript de son bloc
lorsque "la vue est chargée". Comme on le voit dans le résultat plus bas testData
est modifié, mais pas testComputed
Mais alors qu’elle est l’intérêt des computed ?
Imaginez que dans une data nous souhaitions utiliser la valeur d’une autre data.
Est-ce que testDataCopy
va fonctionner ?
Et bien non. Mais cela fonctionnera grâce à computed.
Nous voyons donc un premier bénéfice d’utiliser computed. C’est la possibilité de copier une ou plusieurs valeurs localisées dans data.
L’autre particularité de computed dans vuejs est que contrairement aux fonctions dans methods et les valeurs dans data, son contenu n’est pas réexécuter à chaque fois. Si l’une des valeurs de computed change, il réexécute sinon non.
Il y a certainement d’autres différences entre data et computed qui n’ont pas été traitées dans cet article.
Me parler :
Si vous souhaitez me contacter, vous pouvez accéder à la page d'accueil.