Maison interface Web js tutoriel Avantages et inconvénients des trois frameworks MVVM : vue, angulaire et avalon_Others

Avantages et inconvénients des trois frameworks MVVM : vue, angulaire et avalon_Others

May 16, 2016 pm 03:03 PM
angular vue

Le contenu principal de cet article est résumé en faisant référence à la documentation officielle :

Vue.js

Vue.js @You Yuxi est une bibliothèque pour créer des interfaces Web interactives. Il s'agit d'un MVVM simplifié. D'un point de vue technique, Vue.js se concentre sur la couche ViewModel des modèles MVVM. Il connecte la couche Vue et la couche Modèle via une liaison de données bidirectionnelle. L'encapsulation DOM réelle et le format de sortie sont résumés dans des directives et des filtres. Par rapport à d'autres bibliothèques, Vue.js est une petite mais belle bibliothèque. L'objectif principal de l'auteur est de produire des composants de liaison de données réfléchissants et de vue composable via une API aussi simple que possible.

Avantages :

Simple : la documentation officielle est très claire et plus facile à apprendre qu'Angular.
Rapide : mettez à jour le DOM en mode batch asynchrone.
Composition : Composez votre application avec des composants découplés et réutilisables.
Compact : ~ 18 Ko min + gzip, et aucune dépendance.
Puissant : expressions et propriétés calculées sans déclarer de dépendances.
Compatible avec les modules : il peut être installé via NPM, Bower ou Duo. Il n'oblige pas tout votre code à suivre les différentes réglementations d'Angular et les scénarios d'utilisation sont plus flexibles.

Inconvénients :

Nouveau-né : Vue.js est un nouveau projet, version 0.10.0 Release Candidate publiée le 20 mars 2014. La dernière version sur github est la version 0.11.4, qui n'est pas aussi mature qu'angular.
L'impact n'est pas très grand : je l'ai recherché sur Google et j'ai découvert que la diversité ou la richesse de Vue.js est inférieure à celle de certaines autres bibliothèques bien connues.
Ne prend pas en charge IE8 : Haha, mais AngularJS 1.3 a également abandonné le support d'IE8, mais l'avalon du professeur @ Stu Zhengmei prend en charge IE6+, donc beaucoup d'efforts devraient être faits pour l'optimiser. Ce n'est pas bon pour les projets qui doivent prendre en charge IE8, mais c'est aussi une tendance dans le développement web front-end. Les versions inférieures d'IE devraient se retirer du stade de l'histoire en changeant notre pensée front-end, plutôt que de s'y conformer. qui utilisent des versions plus anciennes. Les personnes qui ne mettent pas à niveau. Le professeur @玉博 a dit quelque chose, et je pense que c'est très bien. « De nos jours, la prise en charge d'IE6 et 7 n'est plus une fonctionnalité, mais c'est dommage. Nous travaillons dur pour promouvoir Alipay afin qu'il ne prenne pas en charge IE6 et 7. Nous attendons avec impatience. à d'autres frères qui nous rejoignent." ".

AngularJS

AngularJS est très populaire ces derniers temps et compte de nombreux adeptes. Framework MVW JavaScript super-héroïque
La déclaration officielle est très simple : « Une technologie côté client entièrement écrite en JavaScript. Utilisée en conjonction avec d'autres technologies Web établies de longue date (HTML, CSS et JavaScript) pour rendre le développement d'applications Web plus simple et plus rapide que jamais. » Lorsque vous l'apprendrez, je pense que vous serez attiré par ses nombreux nouveaux effets spéciaux.

Avantages :

Vue dynamique : je n'ai jamais pensé que js puisse étendre les attributs du HTML de cette manière, mais AngularJs l'a fait. Il ajoute de nombreuses fonctions d'extensibilité à notre HTML statique, et c'est comme si le HTML prenait vie.
Parfait : il s'agit d'un framework MVW frontal relativement complet, comprenant des modèles, la liaison de données bidirectionnelle, le routage, la modularisation, les services, l'injection de dépendances et d'autres fonctions. Les modèles sont puissants et riches, déclaratifs et dotés d'une multitude d'Angular. instructions. .
Maintenance Google : AngularJS est maintenu par Google. Il dispose sans aucun doute d'un backend puissant. Il présente des avantages évidents par rapport à Vue.js et avalon en termes de promotion et de maintenance. La communauté est également très active et peut bien promouvoir son développement.
AngularJS & Ionic : Ionic : Advanced HTML5 Hybrid Mobile App Framework, ces deux-là sont de bons amis. Ionic utilise AngularJS pour créer un framework le plus adapté au développement d'applications riches et puissantes. La dernière fois, Yu Zhihu a répondu à une question connexe sur le développement d'applications Web. Quel framework et quelle plate-forme d'applications packagées offrent les meilleures performances et efficacité ? - La réponse de Tang Wei, les détails peuvent être trouvés ici.

Inconvénients :

Large et complet : il est difficile d'apprendre. Pour moi, la courbe d'apprentissage est très tortueuse et difficile à comprendre.
Annuler et réécrire : il y a quelque temps, je suis allé voir la communauté et j'ai découvert qu'AngularJS 2.0 renverserait et réécrirait les deux frameworks précédents. Ce sont essentiellement deux frameworks. Cela signifie qu'après la sortie de la version 2.0, vous en avez besoin. pour repartir de zéro, mais j'ai aussi dit Revenez, /article/79637.htmCet article explique très bien les changements dans AngularJS2.0.
Il ne prend pas en charge IE8 ou version antérieure. Il semble que la version 2.0 ne prenne en charge que les terminaux mobiles.

Avalon.js

Avalon.js est un mini framework MVVM simple et facile à utiliser écrit par @ Stu Zhengmei. Il a été publié pour la première fois le 15 septembre 2012. Il a été développé pour résoudre le problème des différentes présentations de vues pour la même logique métier. . Vous pouvez souvent voir des enseignants promouvoir son Avalon.js et publier de nombreux tutoriels, ce qui est sans aucun doute très pratique pour les Chinois qui apprennent Avalon.js.

Avantages

Facile à utiliser, ajoutez une liaison en HTML, définissez ViewModel avec avalon.define en JS, puis appelez la méthode avalon.scan, et ça bougera !
Compatible avec IE6 (autres frameworks MVVM, KnockoutJS(IE6), AngularJS(IE9), EmberJS(IE8), WinJS(IE9)) et avalon.mobile, qui peut fonctionner plus efficacement dans les versions plus récentes de navigateurs tels que IE10
Aucune dépendance, moins de 5000 lignes, moins de 50 Ko après compression
Prend en charge les fonctions de filtre de style de caractère pipe pour faciliter la sortie formatée
La granularité de l'actualisation locale a été affinée en un nœud de texte, un nœud de fonctionnalité
Le nœud à utiliser est lié à la fonction d'actualisation de la vue lors de la première analyse et mis en cache, il n'y a donc pas de place pour que le sélecteur apparaisse.
Rendre le code de manipulation DOM presque éteint
Utilisez un mécanisme de couverture superposée de type CSS pour permettre à chaque partition ViewModel de restituer la page alternativement
Lorsqu'un nœud est supprimé, la fonction de rafraîchissement de la vue correspondante est intelligemment déchargée pour économiser de la mémoire
Les données d'exploitation signifient l'exploitation du DOM, et les opérations sur ViewModel seront synchronisées avec View et Model
Livré avec un chargeur de module AMD, éliminant le besoin d'intégration avec d'autres chargeurs.

Inconvénients

1. Le filtrage de tableau n'est pas aussi complet que le filtre angulaire d'Avalon ne peut être utilisé que pour ms-text, ms-html

.

2. Il n'existe pas de document en anglais et la publicité est restreinte

3. Le skin d'OniUI n'est pas assez beau. Beaucoup de gens disent qu'ils doivent coopérer avec boostrap, mais personne dans la communauté n'a pris l'initiative de le faire

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment utiliser Bootstrap en Vue Comment utiliser Bootstrap en Vue Apr 07, 2025 pm 11:33 PM

L'utilisation de bootstrap dans vue.js est divisée en cinq étapes: installer bootstrap. Importer un bootstrap dans main.js. Utilisez le composant bootstrap directement dans le modèle. Facultatif: style personnalisé. Facultatif: utilisez des plug-ins.

Comment ajouter des fonctions aux boutons pour Vue Comment ajouter des fonctions aux boutons pour Vue Apr 08, 2025 am 08:51 AM

Vous pouvez ajouter une fonction au bouton VUE en liant le bouton dans le modèle HTML à une méthode. Définissez la logique de la fonction de méthode et d'écriture dans l'instance Vue.

Comment référencer le fichier JS avec Vue.js Comment référencer le fichier JS avec Vue.js Apr 07, 2025 pm 11:27 PM

Il existe trois façons de se référer aux fichiers JS dans Vue.js: spécifiez directement le chemin à l'aide du & lt; script & gt; étiqueter;; importation dynamique à l'aide du crochet de cycle de vie monté (); et l'importation via la bibliothèque de gestion de l'État Vuex.

Comment utiliser Watch in Vue Comment utiliser Watch in Vue Apr 07, 2025 pm 11:36 PM

L'option Watch dans Vue.js permet aux développeurs d'écouter des modifications de données spécifiques. Lorsque les données changent, regardez déclenche une fonction de rappel pour effectuer des vues de mise à jour ou d'autres tâches. Ses options de configuration incluent immédiatement, qui spécifie s'il faut exécuter un rappel immédiatement, et profond, ce qui spécifie s'il faut écouter récursivement les modifications des objets ou des tableaux.

Que signifie le développement de plusieurs pages Vue? Que signifie le développement de plusieurs pages Vue? Apr 07, 2025 pm 11:57 PM

Le développement multi-pages VUE est un moyen de créer des applications à l'aide du cadre Vue.js, où l'application est divisée en pages distinctes: Maintenance du code: La division de l'application en plusieurs pages peut rendre le code plus facile à gérer et à maintenir. Modularité: chaque page peut être utilisée comme module séparé pour une réutilisation et un remplacement faciles. Routage simple: la navigation entre les pages peut être gérée par une configuration de routage simple. Optimisation du référencement: chaque page a sa propre URL, ce qui aide le référencement.

Comment revenir à la page précédente par Vue Comment revenir à la page précédente par Vue Apr 07, 2025 pm 11:30 PM

Vue.js dispose de quatre méthodes pour revenir à la page précédente: $ router.go (-1) $ router.back () utilise & lt; router-link to = & quot; / & quot; Composant Window.History.back (), et la sélection de la méthode dépend de la scène.

Comment utiliser Vue Traversal Comment utiliser Vue Traversal Apr 07, 2025 pm 11:48 PM

Il existe trois méthodes courantes pour que Vue.js traverse les tableaux et les objets: la directive V-FOR est utilisée pour traverser chaque élément et les modèles de rendu; La directive V-Bind peut être utilisée avec V-FOR pour définir dynamiquement les valeurs d'attribut pour chaque élément; et la méthode .map peut convertir les éléments du tableau en nouveaux tableaux.

Comment sauter une balise à Vue Comment sauter une balise à Vue Apr 08, 2025 am 09:24 AM

Les méthodes pour implémenter le saut d'une balise dans Vue incluent: l'utilisation de la balise A dans le modèle HTML pour spécifier l'attribut HREF. Utilisez le composant routeur-link du routage Vue. Utilisez cette méthode. $ Router.push () dans JavaScript. Les paramètres peuvent être passés à travers le paramètre de requête et les itinéraires sont configurés dans les options de routeur pour les sauts dynamiques.

See all articles