vue简答题

1、请简述vue的特性

(1)数据驱动视图

在vue页面中,vue会监听数据变化,当页面数据发生变化的时候,vue会重新渲染页面结构。

(2)双向数据绑定

vue实现了数据的双向绑定,当数据发生变化的时候,视图也会发生变化;当视图发生变化的时候,数据也会跟着同步发生变化。

(3)指令

指令主要包括内置命令和自定义命令,内置命令指的是vue中自带的命令,而自定义命令指的是有用户自己定义的指令。指令的名称以“v-”开头,作用于HTML中的元素。将指令绑定到元素上时,指令会为绑定的元素添加一些特殊行为。

(4)插件

vue支持插件,通过加载插件可以实现更多功能。

2、请简述MVVM的组成部分及基本工作原理

组成部分:Model(数据类型),View(视图),ViewModel(视图类型)

Model:是数据部分,负责业务数据的处理

View:是视图部分,负责视图处理

VBiewModel:用于连接视图与数据类型,负责监听Model或者View的改变。

3、请简述v-if与v-show指令的区别

v-show与v-if都用来决定某一个元素是否在页面上显示出来。

v-if是根据布尔值切换元素的显示或隐藏元素,本质是通过操作DOM元素来切换显示状态。当给定的值为true时,元素存在于DOM树中;当给定的值为false时,元素从DOM树中移除。

v-show的原理是通过为元素添加或移除display:none样式来实现元素的显示或隐藏。

当需要频繁切换某个元素的显示或隐藏属性的时候,使用v-show会更加节省性能上的开销,如果只需要切换一次的时候,使用v-if更合理。

4、请简述事件修饰符

通过.prevent事件修饰符可以实现阻止默认事件行为的功能。

通过.stop事件修饰符可以实现阻止事件冒泡的功能。

通过.capture事件修饰符可以实现事件捕获的功能。

通过.once事件修饰符可以实现使事件只触发一次的功能。

通过.self事件修饰符可以实现只有DOM元素自身触发事件时才执行事件方法的功能。

5、请简述组件之间时间共享有哪几种方式

通过props实现父组件向子组件中传递数据

通过自定义事件实现子组件向父组件传递数据

通过依赖注入实现跨级组件之间的数据传递

6、请简述解决组件之间样式冲突的方式

scoped属性用于解决组件之间的样式冲突

深度选择器,通过:deep()伪类来实现,其小括号中可以定义用于子组件的选择其

7、请简述自定义指令的分类

vue中自定义指令分为两类,分别是局部自定义指令,全局自定义指令。

私有自定义指令指的是在组件内部定义的指令,私有自定义指令指的是在组件内部定义,在定义的组件内部使用的指令。

全局自定义指令是在全局定义的指令,全局定义的指令可以用于任何一个组件中。

8、请简述KeepAlive组建的作用

在vue中,可以通过KeepAlive组件实现组件缓存

KeepAlive组件通过<KeepAlive>标签来定义,使用<KeepAlive>标签包裹需要缓存的组件,组件就不会销毁。

9、简述如何实现路由重定向

路由重定向可以使用户在访问一个URL地址时,强制跳转到另一个URL地址,从而展示特定的组件。通过路由匹配规则中redirect属性可以指定一个新的路由地址,从而实现路由重定向。

10、请简述router.push()和router.go()的区别

router.push():push()方法会向历史记录中添加一个新的记录,以编程方式导航到一个新的URL,当用户单机浏览器后退按钮时,会回到之前的URL。

router.go():go()方法用于实现前进或后退的效果,其参数表示历史记录中前进或后退的步数,类似于window.history.go(),相应的地址栏也会发生变化。

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值