前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Vue面试题集(一)

Vue面试题集(一)

作者头像
hacker707
发布2022-11-27 10:24:03
7000
发布2022-11-27 10:24:03
举报
文章被收录于专栏:hacker的个人博客

✅作者简介:大家好我是honker707,大家可以叫我honker,新星计划第三季python赛道Top1🏆 📃个人主页:honker707的csdn博客 🔥系列专栏:带你玩转Vue 💬推荐一款模拟面试、刷题神器👉点击跳转进入网站

在这里插入图片描述
在这里插入图片描述

前端面试题

谈谈你对Vue的理解

1.它是一个渐进式JavaScript框架 2.核心库加插件 3.动态创建用户界面 4.使用MVVM模式 5.代码简洁 体积小 能够提高运行效率 6.适合PC端和移动端的开发 7.可以轻松引入vue插件以及其他第三方库进行开发

Vue的常用指令

v-text v-text 主要用来更新 textContent,可以等同于 JS 的 text 属性。 v-html 等同于 JS 的 innerHtml 属性 v-cloak 用来保持在元素上直到关联实例结束时进行编译 解决闪烁问题 v-once v-once 关联的实例,只会渲染一次。之后的重新渲染,实例极其所有的子节点将被视为静态内容跳过,这可以用于优化更新性能 == v-if== v-if 可以实现条件渲染,Vue 会根据表达式的值的真假条件来渲染元素 v-else v-else 是搭配 v-if 使用的,它必须紧跟在 v-if 或者 v-else-if 后面,否则不起作用 v-else-if v-else-if 充当 v-if 的 else-if 块, 可以链式的使用多次。可以更加方便的实现 switch 语句。 v-show 也是用于根据条件展示元素。和 v-if 不同的是,如果 v-if 的值是 false,则这个元素被销毁,不在 dom 中。但是 v-show 的元素会始终被渲染并保存在 dom 中,它只是简单的切换 css 的 dispaly 属性 v-for 用 v-for 指令根据遍历数组来进行渲染 v-bind v-bind 用来动态的绑定一个或者多个特性。没有参数时,可以绑定到一个包含键值对的对象。常用于动态绑定 class 和 style。以及 href 等。简写为一个冒号【 :】 v-model 用于在表单上创建双向数据绑定 v-on v-on 主要用来监听 dom 事件,以便执行一些代码块。表达式可以是一个方法名。 简写为:【 @ 】

双向数据绑定原理

MVVM模式 MVVM模式就是Model–View–ViewModel模式。它实现了View的变动,自动反映在 ViewModel,反之亦然。就是在单向绑定的基础上给可输入元素(input、textare等)添加了change(input)事件,(change事件触发,View的状态就被更新了)来动态修改model。 双向绑定原理 vue数据双向绑定是通过数据劫持结合发布者-订阅者模式的方式来实现的。 实现数据的双向绑定,首先要对数据进行劫持监听,所以我们需要设置一个监听器Observer,用来监听所有属性。如果属性发上变化了,就需要告诉订阅者Watcher看是否需要更新。因为订阅者是有很多个,所以我们需要有一个消息订阅器Dep来专门收集这些订阅者,然后在监听器Observer和订阅者Watcher之间进行统一管理的。接着,我们还需要有一个指令解析器Compile,对每个节点元素进行扫描和解析,将相关指令(如v-model,v-on)对应初始化成一个订阅者Watcher,并替换模板数据或者绑定相应的函数,此时当订阅者Watcher接收到相应属性的变化,就会执行对应的更新函数,从而更新视图。 总结成三个步骤 1实现一个监听器Observer,用来劫持并监听所有属性,如果有变动的,就通知订阅者。 2实现一个订阅者Watcher,每一个Watcher都绑定一个更新函数,watcher可以收到属性的变化通知并执行相应的函数,从而更新视图。 3实现一个解析器Compile,可以扫描和解析每个节点的相关指令(v-model,v-on等指令),如果节点存在v-model,v-on等指令,则解析器Compile初始化这类节点的模板数据,使之可以显示在视图上,然后初始化相应的订阅者(Watcher)。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-07-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前端面试题
  • 谈谈你对Vue的理解
  • Vue的常用指令
  • 双向数据绑定原理
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档