说说vue?vue是什么?

151 阅读3分钟

一:vue是什么?

1,一款流行的用于创建用户界面开源js前端框架,旨在更好的组织与简化开发;

2,一个创建单页面应用的web应用框架,所关注的核心是MVC模式中的视图层,同时也能方便的获取数据更新,并通过组件内部特定的方法实现视图与模型的交互

二:vue的核心特性?

1,数据驱动(MVVM):Model-View-ViewModel

Model:模型层,负责处理业务逻辑以及和服务器端进行交互

View:视图层,负责将数据模型转化为UI展示出来,可以简单的理解为HTML页面

ViewModel:视图模型层,用来连接Model和View,是通信桥梁

2,组件化

1,什么是组件化:就是把图形、非图形的各种逻辑均抽象为一个统一的概念(组件)来实现开发的模式,在vue中每一个.vue文件都可以视为一个组件

2,组件化的优势:

  • 降低整个系统的耦合度,在保持接口不变的情况,可以替换不同的组件快速完成需求。
  • 调试方便,能快速定位。原因是因为每个组件之间低耦合,职责单一。
  • 提高可维护性,对代码进行优化可获取系统的整体升级

3,指令系统:是带有v-前缀的特殊属性,当表达式的值改变时,将其产生的连带影响,响应式地作用于DOM,常见指令有(v-if,v-for,v-bind,v-model,v-on)。在没有指令之前,我们是需要先获取dom节点然后再干的啥

三:vue和传统开发的区别?

  • vue所有的界面事件,都是只去操作数据,jquery操作DOM
  • vue界面的变动,都是根据数据自动绑定出来的,jquery操作DOM

四:vue和React对比?

相同点:

  • 都有组件化思想
  • 都支持服务器端渲染
  • 都有虚拟DOM
  • 数据驱动视图
  • 都有支持native的方案:Vue有weex,React有React native
  • 都有自己的构建工具:Vue的vue-cli,React的Create React App

区别:

  • 数据流向不同,vue是双向数据流,react是单向数据流
  • 数据变化的实现原理不同。React使用的是不可变数据,vue使用的是可变数据
  • 组件化通信不通:React是使用回调函数,vue是事件+回调函数
  • diff算法不同,react是diff队列保存需要更新的Dom,得到patch树,再统一操作批量更新DOM。Vue是使用双向指针,边对比,边更新DOM

五:vue2.0和vue3.0的区别?

vue2.0和vue3.0的主要区别包括性能优化,API设计,响应式系统,TS支持以及其他特性

  • 性能优化:通过引入新的虚拟DOM算法和编译时的优化,如静态提升,Tree-shaking等技术,显著提高渲染速度和减少内存消耗。在挂载和更新性能上显著提高
  • API设计:组合式API比2.0的选项式API相比,提供了更好的逻辑复用和代码组织能力。
  • 响应式系统:使用Proxy对象作为响应式基础,允许跟踪更多类型的变化,提供更好的性能。Vue 2.0使用Object.defineProperty来实现其响应式系统,这种方法有一些限制,例如无法检测到对象属性的添加或删除。
  • TS支持
  • 其他:支持Fragment语法,允许组件返回多个根节点,提高组件的灵活性。还增加了Suspense组件和异步组件的改进,使得在加载异步组件时可以显示加载状态或占位符,提高了用户体验。
参考文献:

mp.weixin.qq.com/s/dJ8WPIQ9x… mp.weixin.qq.com/s/dgC6zOkpo…