扫码关注公众号
Vue 组件间通信有哪几种方式?
Vue组件间通信是面试常考的知识点之一,这题有点类似于开放题,你回答出越多方法当然越加分,表明你对Vue掌握的越熟练。Vue组件间3类通信:父子组件通信、隔代组件通信、兄弟组件通信。(1)props/$emit适用父子组件通信(2)ref与children适用父子组件通信(3)EventBus(on)适用于父子、隔代、兄弟组件通信(4)listeners适用于隔代组件通信(5)provide/inject适用于隔代组件通信(6)Vuex适用于父子、隔代、兄弟组件通信
computed 和watch的区别和运用的场景?
【解析】computed:是计算属性,依赖其它属性值,并且computed的值有缓存,只有它依赖的属性值发生改变,,一次获取computed的值时才会重新计算computed的值;watch:更多的是「观察」的作用,类似于某些数据的监听回调,每当监听的数据变化时都会执行回调进行后续操作;运用场景:当我们需要进行数值计算,并且依赖于其它数据时,应该使用computed,因为可以利用computed的缓存特性,避免每次获取值时,都要重新计算;当我们需要在数据变化时执行异步或开销较大的操作时,应该使用watch,使用watch选项允许我们执行异步操作(访问一个API),限制我们执行该操作的频率,并在我们得到最终结果前,设置中间状态。这些都是计算属性无法做到的。
vue-router 路由模式有几种?
【解析】Hash:使用URL的hash值来作为路由。支持所有浏览器。History:以来HTML5HistoryAPI和服务器配置。Abstract:支持所有javascript运行模式。如果发现没有浏览器的API,路由会自动强制进入这个模式。
vue- router有哪几种导航钩子?
【解析】有3种。第一种是全局导航钩子:router.beforeEach(to,from,next)。作用是跳转前进行判断拦截。第二种是组件内的钩子。第三种是单独路由独享组件。
在Vue.cli中怎样使用自定义组件?在使用过程中你遇到过哪些问题?
【解析】具体步骤如下:(1)在components目录中新建组件文件,脚本-定要导出暴露的接口。(2)导入需要用到的页面(组件)。(3)将导入的组件注入uejs的子组件的component属性中。(4)在template的视图中使用自定义组件。
在vue.js中如何绑定事件?
【解析】通过在v-0n后跟事件名称=“事件回调函数()”的语法绑定事件。事件回调函数的参数集合()可有可无。如果存在参数集合(),事件回调函数的参数需要主动传递,使用事件对象要传递$event。当然,此时也可以传递一些其他自定义数据。如果没有参数集合,此时事件回调函数有一个默认参数,就是事件对象。事件回调函数要定义在组件的methods属性中,作用域是Vue.js实例化对象,因此在方法中,可以通过this使用Vue.js中的数据以吸方法,也可以通过@语法糖快速绑定事件,如@事件名称=事件回调函数()”。