VueJS 概述

VueJS 概述

VueJS 是一个开源的渐进式JavaScript框架,用于开发交互式Web界面。它是用于简化Web开发的著名框架之一。VueJS专注于视图层。它可以轻松地集成到大型项目中进行前端开发而无需任何问题。

VueJS的安装非常容易开始。任何开发人员都可以很快理解和构建交互式Web界面。VueJS由Google的前雇员Evan You创建。VueJS的第一个版本发布于2014年2月。最近,它在GitHub上获得了64,828颗星,使其非常受欢迎。

特征

以下是VueJS提供的特点。

虚拟DOM

VueJS使用虚拟DOM,这也是其他框架(如React,Ember等)使用的技术。不对DOM进行更改,而是创建DOM的副本,以JavaScript数据结构的形式存在。每当进行更改时,都会对JavaScript数据结构进行更改,并将其与原始数据结构进行比较。然后将最终更改更新到真实的DOM中,用户将看到相应的变化。这在优化方面很好,开销较小,更改的速度较快。

数据绑定

数据绑定功能可以帮助通过使用VueJS提供的v-bind绑定指令来操纵或赋值HTML属性、更改样式、分配类。

组件

组件是VueJS的重要特性之一,它可以帮助创建可在HTML中重复使用的自定义元素。

事件处理

v-on是添加到DOM元素上的属性,用于监听VueJS中的事件。

动画/过渡

VueJS可以在向DOM添加/更新或从DOM中删除HTML元素时,以各种方式应用过渡效果。VueJS有一个内置过渡组件,需要将其包装在要过渡的元素周围。我们可以轻松地添加第三方动画库,并为界面添加更多的交互性。

计算属性

这是VueJS的重要特性之一。它可以监听对UI元素所做的更改并执行必要的计算。不需要额外编码来实现这一功能。

模板

VueJS提供基于HTML的模板,将DOM与Vue实例数据绑定在一起。Vue将模板编译为虚拟DOM渲染函数。我们可以使用渲染函数的模板,为此我们必须用渲染函数替换模板。

指令

VueJS具有内置指令,例如v-if,v-else,v-show,v-on,v-bind和v-model。这些指令用于在前端执行各种操作。

观察者

观察者应用于发生更改的数据。例如,表单输入元素。在这里,我们不需要添加任何额外的事件。观察者负责处理任何数据更改,使代码简单而快速。

路由

使用vue-router实现页面之间的导航。

轻量级

VueJS脚本非常轻量,性能也非常快。

Vue-CLI

VueJS可以通过vue-cli命令行界面在命令行中安装。它使用vue-cli轻松构建和编译项目。

与其他框架的比较

现在让我们将VueJS与其他框架(例如React、Angular、Ember、Knockout和Polymer)进行比较。

VueJS与React

虚拟DOM

虚拟DOM是DOM树的虚拟表示。使用虚拟DOM时,创建一个与实际DOM相同的JavaScript对象。每当需要对DOM进行更改时,都会创建一个新的JavaScript对象并进行更改。然后将两个JavaScript对象进行比较,并在实际DOM中更新最终更改。

VueJS和React都使用虚拟DOM,这使得它们更快。

模板与JSX

VueJS使用独立的html、js和css。对于初学者来说,理解和采用VueJS的样式非常简单。基于模板的VueJS方法非常简单。

React使用JSX方法。对于ReactJS来说,一切都是JavaScript。HTML和CSS都是JavaScript的一部分。

安装工具

React使用 create react app ,VueJS使用 vue-cli / CDN / npm 。两者都非常易于使用,并且项目使用所有基本要求进行设置。React需要webpack进行构建,而VueJS不需要。可以在jsfiddle或codepen中使用cdn库随时开始VueJS编码。

受欢迎程度

React比VueJS更受欢迎。与VueJS相比,React的工作机会更多。React背后有一个大牌子,即Facebook,这使它更受欢迎。由于React使用了JavaScript的核心概念,它使用了JavaScript的最佳实践。与React一起工作的人肯定会对所有JavaScript概念非常熟悉。

VueJS是一个发展中的框架。目前,与React相比,VueJS的工作机会较少。根据一项调查,许多人正在适应VueJS,这可能使其在与React和Angular相比更受欢迎。有一个很好的社区致力于开发VueJS的不同功能。vue-router由该社区进行维护并定期更新。

VueJS从Angular和React中吸取了优点并构建了一个强大的库。由于其轻量级库,VueJS比React/Angular快得多。

VueJS与Angular

相似之处

VueJS与Angular有很多相似之处。诸如v-if、v-for之类的指令与Angular的ngIf、ngFor几乎相似。它们都提供了命令行界面用于项目安装和构建。VueJS使用Vue-cli,Angular使用angular-cli。两者都提供双向数据绑定、服务器端渲染等功能。

复杂性

Vue.js非常容易学习和开始使用。如前所述,初学者可以使用VueJS的CDN库,并在codepen和jsfiddle中开始使用它。

对于Angular,我们需要经历一系列安装步骤,对于初学者来说有点困难。它使用TypeScript进行编码,这对于来自核心JavaScript背景的人来说很难。但是,对于属于Java和C#背景的用户来说,学习起来更容易。

性能

决定性能是由用户来决定的。VueJS的文件大小比Angular要轻。在下面的链接中提供了对比框架性能的比较 http://stefankrause.net/js-frameworks-benchmark4/webdriver-ts/table.html

流行度

目前,Angular比VueJS更受欢迎。许多组织使用Angular,使其非常受欢迎。在Angular方面有更多的工作机会。然而,VueJS正在市场上崭露头角,并且可以被视为Angular和React的良好竞争者。

依赖

Angular提供了许多内置功能。我们必须导入所需的模块并开始使用,例如@angular/animations,@angular/form。

VueJS没有像Angular那样的内置功能,需要依靠第三方库进行开发。

灵活性

VueJS可以轻松地与任何其他大型项目合并而没有任何问题。Angular在与其他现有项目一起开始工作方面不那么容易。

向后兼容性

我们有AngularJS,Angular2现在是Angular4。AngularJS和Angular2有很大的差别。由于核心差异,无法将在AngularJS中开发的项目应用转换为Angular2。

VueJS的最新版本是2.0,它在向后兼容性方面表现良好。它提供了易于理解的良好文档。

TypeScript

Angular使用TypeScript进行编码。用户需要了解TypeScript才能开始使用Angular。然而,我们可以在jsfiddle或codepen上使用cdn库在任何地方开始使用VueJS进行编码。我们可以使用容易上手的标准JavaScript开始工作。

VueJS vs Ember

相似之处

Ember提供Ember命令行工具,即ember-cli,用于Ember项目的简单安装和编译。

VueJS也有一个命令行工具vue-cli用于启动和构建项目。

它们都具有路由器、模板和组件等功能,使它们作为UI框架非常丰富。

性能

与Ember相比,VueJS具有更好的性能。Ember添加了一个用于改进重渲染性能的glimmer渲染引擎,这与VueJS和React使用虚拟DOM的概念类似。然而,与Ember相比,VueJS具有更好的性能。

VueJS vs Knockout

Knockout在浏览器支持方面表现良好。它支持较低版本的IE,而VueJS在IE8及以下不受支持。随着时间的推移,Knockout的开发速度放缓。近年来并没有太多关注度。

另一方面,VueJS已经开始受到欢迎,并且Vue团队定期提供更新。

VueJS v/s Polymer

Polymer库由Google开发。它被用在许多Google项目中,例如Google I/O,Google Earth,Google Play Music等。它提供了类似VueJS的数据绑定和计算属性。

Polymer自定义元素定义包括纯JavaScript/CSS、元素属性、生命周期回调和JavaScript方法。相比之下,VueJS允许轻松使用JavaScript/html和CSS。

Polymer使用Web组件特性,并且需要为不支持这些特性的浏览器提供polyfills。VueJS没有这样的依赖项,可以在IE9+的所有浏览器中正常工作。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

VueJS 精品教程