Vue面试汇总

1.对Vue是一种渐进式理解?
主张最少。Vue可能有些方面是不如React,不如Angular,但它是渐进的,没有强主张,你可以在原有大系统的上面,把一两个组件改用它实现,当jQuery用;也可以整个用它全家桶开发,当Angular用;还可以用它的视图,搭配你自己设计的整个下层用。你可以在底层数据逻辑的地方用OO和设计模式的那套理念,也可以函数式,都可以,它只是个轻量视图而已,只做了自己该做的事,没有做不该做的事,仅此而已。

2.v-show和v-if区别,说明使用场景?
v-show 和v-if都是true的时候显示,false的时候隐藏
但是:false的情况下,v-show是采用的display:none;,v-if采用惰性加载。
如果需要频繁切换显示隐藏需要使用v-show

3watch和computed区别?
computed

  1. 支持缓存,只有依赖数据发生改变,才会重新进行计算
  2. 不支持异步,当computed内有异步操作时无效,无法监听数据的变化
    3.computed 属性值会默认走缓存,计算属性是基于它们的响应式依赖进行缓存的,也就是基于data中声明过的数据通过计算得到的
  3. 如果一个属性是由其他属性计算而来的,这个属性依赖其他属性,是一个多对一或者一对一,一般用computed
    5.如果computed属性属性值是函数,那么默认会走get方法;函数的返回值就是属性的属性值;在computed中的,属性都有一个get和一个set方法,当数据变化时,调用set方法。
    watch
  4. 不支持缓存,数据变,直接会触发相应的操作;
    2.watch支持异步;
    3.监听的函数接收两个参数,第一个参数是最新的值;第二个参数是输入之前的值;
  5. 当一个属性发生变化时,需要执行对应的操作;一对多;

4.常用的修饰符?
Stop:阻止冒泡;
prevent:阻止默认事件;
once:只执行一次;
capture:将事件流设为捕获方式;
self:直对自身触发事件; enter:回车键;Up:上; down:下;left:左;right:右;
esc:退出;space:空格;delete:删除

5vue中key的作用
在v-for时使用,标识组件的唯一性,更好的区分组件,高效的更新虚拟DOM

6父组件向子组件通行
在子组件的标签上定义一个变量,:变量=‘传的值’,在子级中使用props接收变量

通过属性传值,然后子组件通过props接受
eg:

<tabar :title=''></tabar>

compnent{
    'tabar',{
    template:`<h1>这是一个子组件<h1>`,
     props:['title']   //接受到父组件的ti存到了title
}
}

new Vue{
    data:{
    ti:'父组件内容'
    }
    
}

7子组件向父组件通信
子组件发射事件this.$emit(‘事件名’,‘参数’),父组件监听@事件名=‘函数’

<tabar @back='resevce'></tabar>

compnent{
    'tabar',{
        template:`<h1>这是一个子组件<h1>`,
        props:['title']   //接受到父组件的ti存到了title
    }
    data:{
        return funcation(){
            
        }
        methonds:{
            this.$emit('back','子组件内容')
        }
    }
}

new Vue{
    data:{
        ti:'父组件内容'
    }
    methonds:{
        resevce(...arg){
            console.log(arg)
        }   
    }
    
}

8兄弟组件之间传值
创建一个新的vue实例 var trans = new Vue()
在组件一中:trans. o n ( ‘ 事 件 ’ , ( n ) = > c o n s o l e . l o g ( n ) ) 在 组 件 二 中 : t r a n s . on(‘事件’,(n)=>{console.log(n) }) 在组件二中:trans. on(n=><

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值