Vue
1.那些数组方法会导致v-for更新页面? 有的数组方法不导致v-for更新页面,如何处理?
{1. 可以改变原数组的方法 2.拿回返回值的新数组,直接替换旧数组 this.$set()方法更新某个值}
2. v-for更新是,是如何操作DOM的?
{1.循环出新的虚拟DOM结构,和旧的虚拟DOM结构对比,尝试复用标签就地更新内容}
3.虚拟DOM是什么? 虚拟DOM好处?
{1.虚拟DOM本质就是一个Js对象,保存DOM关键信息 2.提高DOM更新的性能,不能频繁操作真实DOM,在内存中找到变化部分,在更新真实DOM(打补丁)}
4.diff算法如何比较新旧虚拟DOM? 根元素变化? 根元素未变,属性改变?
{1. 统计比较 2.删除重新建立整个DOM树 3. DOM复用,只更新属性}
5.如何安装全局包? 子元素或者内容改变会分diff那2种情况比较? key值要求是? key应该怎么用? key好处?
{1. 无key,就地更新 ----> 有key,按照key比较 2.唯一不重复的字符串或者数值 3. 有id用id,无id用索引 4. 可以配合虚拟DOM提高更新的性能}
6.如何给标签class属性动态赋值?
{1.:class= '{类名:布尔值}',true使用,false不用}
7.给style赋值和class区别是?
{1.:class= '{类名:布尔值}',true使用,false不用 :style='{css属性名:值}'}
8.Vue中过滤器作用? 如何定义过滤器? 如何使用过滤器? 过滤器注意事项?
{1.传入一个值,处理后返回另外一个值 2.main.js - Vue.filter('过滤器名字',函数体) 3.Vue变量 | 过滤器名字 4.插值表达式 / 动态属性}
9.多个过滤器使用? 如何给过滤器传额外值]]?
{1.Vue变量 | 过滤器1 | 过滤器2 2.Vue变量 | 过滤器(值)}
10.计算属性使用场景? 计算属性特点? 计算属性注意事项?
{1.当变量的值,需要通过别人计算而得来 2.函数内使用的变量改变,重新计算结果返回 3.计算属性名和data里名字不能重复}
11.计算属性好处是? 计算属性使用场景?
{1.带缓存 / 依赖项不变,直接从缓存取 / 依赖项改变,函数自动执行并重新缓存 2.依赖其他变量计算而得来才用}
12.如何给dom标签绑定事件? 涉及的知识点?
{1.computed定义和使用计算属性 ---> 数组reduce方法累积计算}
13.何时用计算属性完整写法? set函数和get函数什么执行?
{1.给计算属性变量赋值时 2.set接受要赋予的值 / get里要返回给这个计算属性具体值}
14.小框如何影响全选框中状态的?
{1.v-model给全选框绑定isAll计算属性 --> isAll计算属性里返回统计小选中状态结果}
15.全选如何影响小选中状态的?
{1.小选框v-model,关联数组里对象的c属性 --> isAll计算属性的set方法,拿到全选框状态 --> 状态值赋值给,数组里每个对象的c属性}
16.反选如何实现的?
{1.遍历每个对象,吧c属性的值取反在赋予回去}
17.如何侦听到某个变量值改变呢?
{1.使用watch配置项,key是要侦听的data/计算属性名}
18.如何侦听到一个对象/数组呢? 侦听器函数马上执行?
{1.把侦听器写成对象形式,给handler方法和deep:true 2.immediate: true}