浅谈Vue入门需掌握的知识

 更新时间:2021年04月07日 17:23:45   作者:JeffreytheCoder  
这篇文章主要介绍了浅谈Vue入门需掌握的知识,感兴趣的同学参考下

Vue作为一款目前最流行的前端框架之一,是许多前端开发工程师的不二选择。最近我在前端岗位上也运用Vue实现了几款产品,那么今天来分享一下Vue是什么,以及我对Vue的见解。

一、定义

Vue是一套用于构建用户界面的渐进式JavaScript框架

与传统JS和JQuery框架不同,Vue的渐进式框架表示开发者可以由简单组件写起,渐渐搭建出一个复杂的前端平台。
形成Vue渐进式框架的核心概念为:组件化MVVM响应式,和生命周期,下面会一个个详细介绍。

二、为什么要用Vue?

1. 组件化

Vue将组成一个页面的HTML,CSS和JS合并到一个组件中,可以被其他组件或页面引入而重复利用。通常每个.Vue文件作为一个组件导出,组件可以作为基础组件(如按钮)或一个页面(如登录页面)。组件化很好的将一个庞大复杂的前端工程拆分为一个个组件,重复利用的性质也大大提高了开发的效率。

2. MVVM 数据双向绑定

MVVM模式(全称为Model-View-ViewModel)为Vue实现数据双向绑定。在MVVM中,View为视图层,ViewModel为业务逻辑层,Model为数据层。

什么是数据双向绑定呢?当用户使View变化时(如填写表单),变化会自动同步到ViewModel处理相应逻辑,并将变化更新到Model数据库。反之,若服务端数据变化(如股价波动),变化会自动同步到ViewModel处理相应逻辑,并将变化同步到View展现给用户。

在用Vue之前,我完成HTML和JS之间的交互需要使用大量的DOM操作来实现动态加载。MVVM的数据双向绑定减少了DOM操作,更高效地实现了视图和数据的交互。同时,MVVM使界面、交互和数据层分离,便于设计人员负责设计界面,后端开发人员提供数据接口,而前端开发人员专注于业务交互逻辑的实现。

3. 响应式 虚拟DOM

对于DOM来说,当HTML的一个元素(如div)需要响应数据更改时,会刷新整个页面,导致效率堪忧。对于虚拟DOM,浏览器会将HTML文件转换为JS文件并复制一个额外使用(虚拟)。对于任何更改,虚拟DOM都将复制的JS与原始JS进行比较,只重新加载更改的部分,局部修改到真实DOM上。

在Vue中,每个绑定data属性的组件都有一个Watcher检测data属性的变化。一旦检测到改变,则重新渲染该组件,这就是响应式

4. 生命周期

最后,每个Vue组件都有生命周期,过程为创建 -> 挂载 -> 更新 -> 销毁。开发者可以通过钩子函数(如mounted)在组件生命周期中的不同时刻进行操作。下面是一张Vue生命周期的完整图解。

三、Vue的优缺点

讲完Vue的几个核心概念后,总结一下使用Vue框架给前端开发带来的优缺点:

优点

1. 轻量级

Vue作为一款轻量级前端框架,大小只有18–21KB,工程搭建简单,只需要几行命令符。因为Vue使用的主体语言为JS,开发者可以灵活地将其他框架(如React和Angular)的项目迁移到Vue,具有很高的集成能力。Vue提供的router路由可以便捷地搭建一个多界面应用

2. 高性能

虚拟DOM和响应式避免了不必要的全局重新渲染,提升了用户体验,使用户操作更加流畅。

3. 好上手

与面向对象编程性质类似,组件化更符合人类思维。打个比方,我们在设计网页时,通常会把一个界面分成一块一块的、用于某功能的特定样式模块。Vue的组件化使前端开发更加容易理解,同时MVVM可以更便捷地实现交互,对新手十分友好。

4. 插件化

由于Vue框架的流行性,目前有许多基于Vue的npm扩展包和开发工具(如Vuex)。Vue可以在一个文件下统一管理所有外部插件的全局使用。

5. 便于测试

组件化利于开发者对于单一组件进行测试,很少发生在整个页面下找不到是哪个地方报错的情况。

缺点

1. 生态环境不够完善

虽然Vue五年以来的发展寻索,生态环境不如React和Angular规范。Vue开发的讨论社区较小

2. 国外市场小

Vue是由中国尤大神开发的,主要有阿里巴巴、饿了么等国内大公司作为主流框架,国外大部分使用React和Angular。

以上就是浅谈Vue简易入门知识的详细内容,更多关于vue入门的资料请关注脚本之家其它相关文章!

相关文章

  • uniapp定义new plus.nativeObj.View实现APP端全局弹窗功能

    uniapp定义new plus.nativeObj.View实现APP端全局弹窗功能

    文章介绍了在UniApp中使用`newplus.nativeObj.View`实现弹窗的原因和方法,它定义了一个`AppPopupView`弹窗函数,并在`main.js`中挂载到全局页面,以便在任何地方调用,感兴趣的朋友跟随小编一起看看吧
    2024-11-11
  • 使用vue打包时gzip压缩的两种方案

    使用vue打包时gzip压缩的两种方案

    这篇文章主要介绍了使用vue打包时gzip压缩的两种方案小结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06
  • vue和react项目中key的作用示例详解

    vue和react项目中key的作用示例详解

    这篇文章主要为大家介绍了vue和react项目中key的作用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • vue路由传参 router-link和编程式传参方式

    vue路由传参 router-link和编程式传参方式

    这篇文章主要介绍了vue路由传参 router-link和编程式传参方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • 利用Vue.js制作一个拼图华容道小游戏

    利用Vue.js制作一个拼图华容道小游戏

    这篇文章主要为大家详细介绍了如何利用Vue.js编写一个拼图华容道游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • 浅谈Vue render函数在ElementUi中的应用

    浅谈Vue render函数在ElementUi中的应用

    今天小编就为大家分享一篇浅谈Vue render函数在ElementUi中的应用,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • Vue组件库ElementUI实现表格加载树形数据教程

    Vue组件库ElementUI实现表格加载树形数据教程

    这篇文章主要为大家详细介绍了Vue组件库ElementUI实现表格加载树形数据教程,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-06-06
  • vue+webpack实现异步组件加载的方法

    vue+webpack实现异步组件加载的方法

    下面小编就为大家分享一篇vue+webpack实现异步组件加载的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • vue element-plus中el-input修改边框border的方法

    vue element-plus中el-input修改边框border的方法

    element样式还是蛮好的,只是有时候我们需要做一些调整,比如el-input的边框,下面这篇文章主要给大家介绍了关于vue element-plus中el-input修改边框border的相关资料,需要的朋友可以参考下
    2022-09-09
  • Vue中获取图片高度的两种方法

    Vue中获取图片高度的两种方法

    在使用Vue2开发移动端页面的时候,需要做一个效果,实现的方案是背景渐变,但是想要实现这个效果就必须进行定位,我的背景高度需要在一个十分恰当的位置,但是我的图片会随着移动端页面的变化而发生高度的变化,为什么会变化?所以本文介绍了Vue中获取图片高度的方法
    2024-08-08

最新评论