Des performances grandement améliorées pour Vue.js 3.4

Par:
fredericmazue

ven, 08/03/2024 - 13:01

Vue.js (aussi appelé plus simplement Vue), est un framework JavaScript open-source utilisé pour construire des interfaces utilisateur et des applications web monopages. L'équipe de Vue vient a annoncé la disponibilité de Vue 3.4, une version qui montre de très grosses améliorations de performances.

Pour arriver à cela, l'analyseur de modèles a été complètement réécrit.  Auparavant, Vue utilisait un analyseur de descente récursif qui s'appuyait sur de nombreuses expressions régulières et recherches anticipées. Le nouvel analyseur utilise un tokenizer de machine d'état basé sur le tokenizer de htmlparser2 , qui parcourt la chaîne entière du modèle une seule fois. Le résultat est un analyseur qui est systématiquement deux fois plus rapide pour les modèles de toutes tailles. Ce nouvel analyseur est également 100 % rétrocompatible pour les utilisateurs finaux de Vue.

3.4 fournit également une refactorisation substantielle du système de réactivité, dans le but d'améliorer l'efficacité du recalcul des propriétés calculées. Par exemple :

const count = ref(0)
const isEven = computed(() => count.value % 2 === 0)

watchEffect(() => console.log(isEven.value)) // logs true

count.value = 2 // logs true again

Avant la version 3.4, le rappel de watchEffect se déclenche à chaque fois que count.value est modifié, même si le résultat calculé reste le même. Avec les optimisations de la version 3.4, le rappel ne se déclenche que si le résultat calculé a réellement changé.

Vue.js est un logiciel libre sous licence MIT, disponible sur GitHub.