号称目前最火的前端框架Vue,它有什么显著特点呢?

JavaScript020

号称目前最火的前端框架Vue,它有什么显著特点呢?,第1张

1、Vue是什么 Vue.js 是目前最火的一个前端框架,除了可以开发网站,还可以开发手机App。 Vue.js 是前端的主流框架之一,和Angular.js、React.js 一起,并成为前端三大主流框架。 Vue.js 是一套构建用户界面的框架,只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合。 Vue.js 是一套用于构建用户界面的渐进式框架。 2、Vue的特点 遵循 MVVM 模式 编码简洁,体积小,运行效率高,适合移动/PC 端开发 它本身只关注 UI, 可以轻松引入 vue 插件或其它第三库开发项目 3、Vue与其他前端框架的关系 借鉴 angular 的模板和数据绑定技术 借鉴 react 的组件化和虚拟 DOM 技术 4、Vue的现有插件 vue-cli: vue 脚手架,用于搭建项目的骨架 vue-resource(axios): ajax 请求 vue-router: 路由 vuex: 状态管理 vue-lazyload: 图片懒加载 vue-scroller: 页面滑动相关 mint-ui: 基于 vue 的 UI 组件库(移动端) element-ui: 基于 vue 的 UI 组件库(PC 端) 5、学习Vue的思想改变

Vue的中心思想是数据驱动,像远古时代的老前辈jQuery是结构驱动。

大家回忆下以前我们使用jQuery写代码的时候,经常是这样写的:

$("#myDiv").html("HelloWorld")

这些写法首先要获取Dom节点,也就是Dom结构,然后再修改数据更新结构的内容,使用jQuery的一个很大的目的就是为了去简化Dom的操作,而使用Vue就大不一样了,Vue的做法就是直接this.msg=HelloWorld,然后msg就会自动的同步到结构上,我们所要关心的是数据内容的改变,而不再去关心如何操作Dom结构了。

总结一句话:不要在想着怎么操作DOM,而是想着如何操作数据!!

vue是什么

Vue.js (读音 /vju?/,类似于 view) 是一套基于javascript的用于构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与单文件组件和 Vue 生态系统支持的库结合使用时,Vue 也完全能够为复杂的单页应用程序提供驱动。

vue特点

简洁、轻量、组件化、快速、数据驱动、模块友好

vue和其他前端框架区别

1.与AngularJS的区别

相同点:

都支持指令:内置指令和自定义指令。

都支持过滤器:内置过滤器和自定义过滤器。

都支持双向数据绑定。

都不支持低端浏览器。

不同点:

1>AngularJS的学习成本高,比如增加了Dependency Injection(依赖注入)特性,而Vue.js本身提供的API都比较简单、直观。

2>在性能上,AngularJS依赖对数据做脏检查,所以Watcher越多越慢。

Vue.js使用基于依赖追踪的观察并且使用异步队列更新。所有的数据都是独立触发的。

对于庞大的应用来说,这个优化差异还是比较明显的。

手机渲染速度:angular1 300ms * vue 200ms * react 100ms

2.与React的区别

相同点:

React采用特殊的JSX语法,Vue.js在组件开发中也推崇编写.vue特殊文件格式,对文件内容都有一些约定,两者都需要编译后使用。

中心思想相同:一切都是组件,组件实例之间可以嵌套。

都提供合理的钩子函数,可以让开发者定制化地去处理需求。

都不内置列数AJAX,Route等功能到核心包,而是以插件的方式加载。

在组件开发中都支持mixins的特性。

不同点:

React依赖Virtual DOM,而Vue.js使用的是DOM模板。React采用的Virtual DOM会对渲染出来的结果做脏检查。

Vue.js在模板中提供了指令,过滤器等,可以非常方便,快捷地操作DOM。

vue的应用场景

简单地说,就是需要对 DOM 进行很多自定义操作的项目小项目理论上 Vue 配合类似Flux的架构也可以胜任超大规模多人协作的复杂项目。