Vue est un framework JavaScript frontal populaire lancé par Evan You en 2014. Vue fournit un moyen très simple et intuitif de créer des interfaces utilisateur grâce à l'utilisation de directives et de composants. Le slogan de Vue est un cadre évolutif car il peut être appliqué progressivement à un projet. Bien que Vue ait montré d’excellentes performances, sur quelle technologie est-il construit ? Cet article explorera le développement sous-jacent de Vue.
La couche inférieure de Vue est principalement construite par les technologies suivantes :
La couche inférieure de Vue est principalement écrite en JavaScript. JavaScript est un langage de programmation orienté objet et son champ d'application continue de s'étendre en raison de sa popularité croissante dans le développement front-end. Le code principal de Vue, y compris les fonctions de cycle de vie et les fonctions de rendu, est écrit en JavaScript natif.
La couche inférieure de Vue utilise la technologie Virtual DOM pour améliorer les performances. Le DOM virtuel fait référence à un objet JavaScript virtuel qui décrit la structure et le style des nœuds DOM réels, mais ne les présente pas réellement. Vue utilise Virtual DOM pour effectuer rapidement des opérations DOM, améliorant ainsi les performances.
Il existe deux bibliothèques principales qui implémentent Virtual DOM, l'une est l'entrepôt de bibliothèques d'implémentation de React, React.js, et l'autre est l'entrepôt de bibliothèques d'implémentation de Vue, Snabbdom.js.
VNode est un concept important dans Vue et peut être considéré comme la description du nœud Virtual DOM. VNode décrit le type, les attributs, les événements, les sous-nœuds et d'autres informations d'un nœud. Dans Vue, chaque composant génère une arborescence VNode, qui représente la structure de vue du composant dans un état spécifique. Lorsque Vue détecte des modifications de données, il régénère l'arborescence VNode et compare l'ancienne et la nouvelle arborescence VNode pour générer des différences et met finalement à jour la vue.
La couche inférieure de Vue comprend également un compilateur, qui est utilisé pour convertir des modèles en fonctions de rendu et générer des arborescences VNode. Dans Vue, un modèle est une combinaison de balises HTML et d'instructions Vue. L'arborescence VNode est générée par le compilateur et finalement rendue sur la page.
Étant donné que le processus de compilation de Vue prend beaucoup de temps, Vue propose une option de pré-compilation. Utilisez des composants tels que Vue.component() ou Vue.extend() pour enregistrer les composants globaux dans l'environnement de développement et utilisez l'option modèle. ou fonction de rendu. Si un modèle est fourni, la fonction de rendu vnode sera automatiquement générée au moment de la compilation, améliorant ainsi la vitesse de rendu et la vérification des erreurs peut également être effectuée au moment de la compilation.
La couche inférieure de Vue utilise le mode MVVM pour implémenter la liaison de données. MVVM est l'abréviation de Model-View-ViewModel. Il s'agit d'un modèle de conception souvent utilisé pour découpler les données et l'interface utilisateur. Dans Vue, le ViewModel est chargé de gérer la communication entre le modèle et la vue. Lorsque les données changent, il met automatiquement à jour la vue et vice versa.
La couche inférieure de Vue implémente également un mécanisme de suivi des dépendances. Lorsque les données dont dépend l'instance Vue changent, elle restituera automatiquement le composant correspondant pour mettre à jour la vue. La couche sous-jacente de Vue implémente le suivi des dépendances via le composant Watcher.
Watcher est un composant important de Vue. Il collecte automatiquement les données dépendantes lorsque le composant est initialisé et surveille les dépendances via le module d'observation. Lorsque les données changent, Watcher est informé de recalculer le composant et de mettre à jour les modifications apportées à la vue. Dans le même temps, Watcher implémente également un mécanisme de file d'attente asynchrone pour fusionner plusieurs Watchers dans la même boucle d'événements afin d'améliorer les performances.
Résumé
La couche inférieure de Vue est principalement construite par des technologies telles que JavaScript, Virtual DOM, VNode, le compilateur, le mode MVVM et le mécanisme de suivi des dépendances. Ces technologies de base de Vue réalisent la liaison de données, la composantisation, les fonctionnalités progressives et autres de Vue, améliorant ainsi l'efficacité du développement et l'expérience utilisateur. Une compréhension approfondie des couches sous-jacentes de Vue nous aidera à mieux comprendre le fonctionnement de Vue et à développer plus efficacement les applications 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!