文章目录

  • 响应式的数据绑定
  • 组件化开发
  • Virtual DOM
  • 《参考资料》


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

与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。

Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。

另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。

响应式的数据绑定

使用了mvvm模式,实现了双向绑定,使数据和视图的更新更为流畅。

如下,p标签里面通过{{ message }}这个写法与input标签中的value双向绑定在了一起。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>vue.js</title><script src="https://unpkg.com/vue/dist/vue.js"></script>
</head>
<body><div id="app"><input type="text" name="" value="" placeholder="在这里输入文字,下面会跟着变化" v-model="message"><hr><p>{{ message }}</p></div><script type="text/javascript">var app = new Vue({el: '#app',data: {message: 'Hello Vue!'}})</script>
</body>
</html>

组件化开发

  • Vue.js通过组件,把一个单页应用中的各种模块拆分到一个一个单独的组件(component)中

只要在父级应用中写好各种组件标签,在组件标签中写好要传入组件的参数,再分别写好各种子组件的实现

Virtual DOM

虚拟dom树是一种以空间换时间的更新页面的技术。

因为浏览器本身处理DOM也是有性能瓶颈的,尤其是在传统开发中,用JQuery或者原生的JavaScript DOM操作函数对DOM进行频繁操作的时候,浏览器要不停的渲染新的DOM树,导致页面看起来非常卡顿。

Virtual DOM是一种可以预先通过JavaScript进行各种计算,把最终的DOM操作计算出来并优化,由于这个DOM操作属于预处理操作,并没有真实的操作DOM,所以叫做虚拟DOM。最后在计算完毕才真正将DOM操作提交,将DOM操作变化反映到DOM树上。

缺点

引入Virtual DOM会加大Vue.js本身的代码尺寸,也会消耗更多内存和CPU(会更耗电)

优点

用Vue.js开发的都是页面中内容很多的元素,操作的DOM量级普遍较大,虚拟dom树以空间换时间是很值得的,能给用户带来更平滑舒适的前端体验。

《参考资料》

vuejs官网

[面试题]为什么要用vue?相关推荐

  1. vue插槽面试题_关于前端Vue框架的面试题,面试官可能会问到哪些。?

    这年头,程序员面试都讲究坐姿,姿势不对,努力白费. 参照下图,请同学们对号入座. 回想一下,自己平时面试的坐姿,你在面试官眼里,大概是什么形象,可能是工程师,也可能是键盘侠,或者找麻烦的. 当然了,想 ...

  2. “约见”面试官系列之常见面试题第四十一篇之VUE生命周期(建议收藏)

    详解Vue Lifecycle 先来看看VUE官网对VUE生命周期的介绍 Vue实例有一个完整的生命周期,也就是从开始创建.初始化数据.编译模板.挂载Dom.渲染→更新→渲染.销毁等一系列过程,我们称 ...

  3. 锁屏面试题百日百刷-VUE篇(一)

    vue 中父组件如何触发子组件的函数,子组件如何触发父组件的函数 父组件中获取子组件函数:children.children.children.refs 子组件中获取父组件函数:$on vue-rou ...

  4. 看完这些经典面试题,你就是vue的超级英雄!

    点击上方"前端进阶周刊",选择"置顶或者星标" 期待你的关注! 前言 本文以前端面试官的角度出发,对 Vue 框架中一些重要的特性.框架的原理以问题的形式进行整 ...

  5. 【面试题】面试官:vue的这些原理你了解吗?

    前言 在之前面试的时候我自己也经常会遇到一些vue原理的问题, 我也总结了下自己的经常的用到的,方便自己学习,今天也给大家分享出来, 欢迎大家一起学习交流, 有更好的方法欢迎评论区指出, 后序我也将持 ...

  6. 【面试题】2023前端vue面试题及答案

    Vue3.0 为什么要用 proxy? 在 Vue2 中, 0bject.defineProperty 会改变原始数据,而 Proxy 是创建对象的虚拟表示,并提供 set .get 和 delete ...

  7. web前端面试题附答案044 - vue获取param参数,有什么缺点吗?

    看这个vue的图标像不像小时候看的<魔神坛斗士>身上的某个元素.真希望成年人的世界就像小时候一样简单快乐. 今天这道面试题主要围绕vue中获取param参数展开,看完本文你可以吸取到以下知 ...

  8. 前端学习(1841):前端面试题之react和vue区别

    相同点 都有组件化开发和Virtual DOM 都支持props进行父子组件间数据通信 都支持数据驱动视图, 不直接操作真实DOM, 更新状态数据界面就自动更新 都支持服务器端渲染 都有支持nativ ...

  9. vue插槽面试题_常见的vue面试题

    001.v-show与v-if的区别 v-show:操作的是元素的display属性 v-if:操作的是元素的创建和插入 相比较而言v-show的性能要高 002.methods.computed.w ...

最新文章

  1. 手把手教你在应用里用上iOS机器学习框架Core ML
  2. 配置vtk(Win8.1 + VS2012+VTK-5.10.1)
  3. RSA的密钥把JAVA格式转换成C#的格式
  4. vb+socket 编写入侵监听程序
  5. python raise valueerror_请教:Python多进程编程时出现raise ValueError(Pool not running) 为什么?。...
  6. 计算机网络-基本概念(3)【网络层】-路由选择协议
  7. MS SqlServer中少用但是好用的SQL语句
  8. Linux LVM学习总结——扩展卷组VG
  9. [css] 你有用过sass中的Mixin功能吗?它有哪些作用?
  10. 知识技能归档-SSL协议20210325
  11. mysql事务控制(xa分布式事务)和锁定语句_MySQL的SQL语句 -事务性语句和锁定语句(7)- XA 事务...
  12. Python argparse模块、argparse.ArgumentParser()用法解析
  13. 数值计算详细笔记(三):线性方程组解法
  14. 计算机网络之网络层- IPv4编址
  15. 速成实用硬笔字——最常用高频汉字前100
  16. 基于SpringBoot框架的网上购书系统的设计与实现
  17. 计算机组成原理——8086 CPU寄存器
  18. 分支预测优化之__builtin_expect
  19. linux ln 命令使用参数详解(ln -s 软链接)
  20. mysql关键字的区别_Mysql关键字和保留字(注意)

热门文章

  1. Buffer Pool介绍
  2. 生成唯一id的几种方法
  3. windows docker启动报错System.InvalidOperationException:Failed to set version to docker-desktop: exit cod
  4. 女孩取名起名字:带染字的古风女孩名字
  5. 小学三年级上册计算机课课件,人教版小学三年级上册语文课件
  6. 基于51单片机的自动浇花系统设计
  7. RaSa2.5.x配置之二:管道组件(Pipeline Components)
  8. 福大软工1816 · 第八次作业课堂实践
  9. 无线充电宝适合所有手机吗?无线充电宝支持哪些手机
  10. CleanMyMac X4.13.4最新免费版苹果电脑软件管家