面试题

作者: Wxq_59f9 | 来源:发表于2019-11-19 12:10 被阅读0次

    v-show 和 v-if区别

    基本差别:

    1:v-if动态创建标签,如果在初始渲染时条件为假,则什么也不做——直到条件第一次变为真时,才会开始渲染条件块。

      :v-show通过css中的display来动态控制显示或隐藏,不管初始条件是什么,元素总是会被渲染

    使用场景:

    1:v-show一般会用在切换比较频繁,  v-if切换不频繁的

    vue中key的作用

    1 .index值不是一定不变的,如果不加key值的话,删除前面的项。后面的index可能变也可能不变,比如加个定时器的时候会变,不加定时器不会变

    2 .不加key的话,更新机制的进行diff的时候是会全部比较的,比如删除第一个的话,后面的元素其实都不一样,会一项一项的比较。然后全部元素都替换,没有做到最小更新。而且里面的传的值也会变,如果这个时候你要根据里面的值删除元素的话,就会出错,尤其是加了定时器之后

    3 .所以这个key值对数据改变之后的diff更新比较有很大的性能提升,或者说有了key和没有key是两种比较和更新机制

    4 .使用v-for更新已渲染的元素列表时,默认采用旧地复用策略,会复用之前的元素,有的时候使用index来做为key值,其实不是特别推荐的。可能会发生变化,最好是时间戳加上一个自增的数字

    5 .如果有key的话,就会根据key值去判断某个是否修改,重新渲染这一项

    6 .虚拟dom的diff算法

    assets和static的区别


    共同点:

         两个都是存放静态资源文件的

    区别:

    assets:存放的静态资源文件在项目打包时,压缩后的静态资源文件最终也会放在static文件中跟着index.html一同上传

    static:static中 放置的静态资源文件就不会走打包压缩格式化等流程,而是直接进入打包好的目录,直接上传至服务器

    computed 和 watch的区别

    1:watch监听某个变量  ,一旦发生变化就会触发watch ,一个新值和一个旧值,      使用场景:异步操作或者开销较大时使用watch更加合适

    2:component是基于依赖进行缓存的, 一旦依赖发生了变化就会重新计算,             使用场景:一个数据受多个数据的影响 (购物车)

    相关文章

      网友评论

          本文标题:面试题

          本文链接:https://www.haomeiwen.com/subject/aoswictx.html