[关闭]
@ttop5 2021-10-21T17:17:14.000000Z 字数 2460 阅读 572

Vue

前端面试


其他: https://vue3js.cn/interview/vue/vue.html#%E4%B8%80%E3%80%81%E4%BB%8E%E5%8E%86%E5%8F%B2%E8%AF%B4%E8%B5%B7

Vue和React 的区别

共同点:

不同点

Vue-Router的hash和history两种路由模式的区别

区别

优缺点

vue-router的三种模式

Vue-Router的动态路由

  1. {
  2. path: '/details/:id'
  3. name: 'Details'
  4. components: Details
  5. }

/details/1, /details/2 等都会被映射到Details组件上

如何获取url参数值

  1. this.$route.params.id

Vue 隔代组件的通信方式 EventBus的具体使用

隔代组件的通讯方式: EventBus、Vuex、provide/inject(祖先想子孙后代传)

EventBus又称为事件总线,使用:
1.创建一个bus.js(引入 Vue 并导出它的一个实例)

  1. import Vue from 'vue';
  2. export const EventBus= new Vue();

2.在两个组件中引入,并且使用EventBus.使on('事件名', callback())来接收

Vue mixin和extend 的使用和区别

区别:
mixin是对Vue类的options进行混入,可以混入多个mixin;有全局和局部混入;
extend用于创建Vue的子类;

另:extends: https://cn.vuejs.org/v2/api/#extends

Vue use的作用

用于安装插件,其实就是调用了插件里的install方法

Vue.use做了什么,为什么需要在new Vue之前使用

new Vue(options)时,首先会进行初始化,将vue上的属性和options进行合并,在进行事件,生命周期等的初始化。
如果Vue.use()在new Vue()之后执行,初始化时你的插件内容还没有添加到相关的属性中(如Vue.options.components、Vue.options.directives、Vue.options.filters),新初始化的Vue实例中也就不会有插件的内容。

Vue 插件有什么用

需要在你调用new Vue()启动应用之前完成

如何在Vue中注册一个全局的组件

用Vue.component()

在注册完一个全局组件后就可以在任何组件中直接使用,而不需要在各个组件中引入并进行局部注册。

步骤:

1.在conponents目录中存放组件;
2.创建components.js文件;
3.引入所有需要注册的全局组件,并用export(里面用Vue.component('组件名', 组件名))
4.在mian.js中引入omponents.js

components.js代码

  1. import 组件名字A from '@/components/组件名A'
  2. import 组件名字B from '@/components/组件名B'
  3. export default(Vue) => {
  4. Vue.component('组件名A', 组件名A)
  5. Vue.component('组件名B', 组件名B)
  6. }

main.js代码

  1. import components from '@/components/components.js'
  2. Vue.use(components)
  3. new Vue({...})

Vue中引入elementUI

在main.js中引入,然后Vue.use(ElementUI)

  1. import ElementUI from 'element-ui'
  2. import 'element-ui/lib/theme-chalk/index.css'
  3. Vue.use(ElementUI)

Vue的双向绑定机制

Vue响应数据原理

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注