作者:今生绝恋2702934494 | 来源:互联网 | 2023-01-13 13:46
最近在找工作,记录一下遇到的面试题和我整顿后的答案。
1、vue-router晓得吗?有哪几种不同的模式?
https://www.jianshu.com/p/4c5…
https://www.jianshu.com/p/557…
https://blog.csdn.net/weixin_…
–vue-router
vue-router 就是vue深度集成的单页面利用的门路管理器,在vue的单页面利用中,由它建设起url和页面的映射关系。
–hash/history
vue-router 在实现单页面利用前端路由时,提供了两种形式:hash和history,依据mode参数来决定采纳哪一种。
① hash模式
- url里会带#号,#号是url的的锚点,代表页面的一个地位,vue-router组件跳转的时候只扭转#号后的局部,所以不会向后端发送申请和从新加载页面,只会对dom的指定地位进行渲染。
- 每次扭转#号后局部,浏览器会在历史列表中新增一条记录,所以按后退会返回上一个地位。
- hash模式的实质原理是wendow的onhashchange工夫,利用它来监控url hash的扭转来更新组件渲染。
② history模式
- url里不带#号。
- 原理是利用了h5中的pushState或replaceState api,实现了只在浏览器历史中新增记录,扭转location地址栏后不从新向服务器申请的性能。
- 但这个模式下刷新页面时会发申请,服务器如果须要非凡配置来防止返回404。
2、说一下vue外面的组件传参。
https://www.jianshu.com/p/85b…
① 父组件传递给子组件:
- 父组件通过组件标签内冒号参数名(:paramsName )传递,子组件通过props参数接住。
- 子组件内调用this.$parent.paramsName 间接拜访父组件参数/办法
② 子组件传递给父组件
- 通过事件传递 this.$emit()
- 父组件通过this.$refs间接调用子组件参数
- 父组件通过this.$children[i]间接调用子组件参数。
③ 兄弟组件传递
- 通过事件总线传递(vue2 eventbus\vue3 mitt)
- 通过vuex传递
3、说下vue组件的生命周期。
https://www.cnblogs.com/qidh/…
https://www.jianshu.com/p/410…
- beforeCreate
第一个生命周期函数,vue实例初始化时调用这个函数,这时data和methods跟dom都没有初始化。
- created
vue实例创立创立实现时调用这个函数,这时data和methods曾经能够用,但dom模板还没渲染。能够在这个阶段向后盾申请数据。
- beforeMount
挂载开始前被调用,dom模板编译实现,用户能够看到模板页面,然而看不到真正的数据。
- mounted
dom树残缺渲染到页面后调用,用户此时能够看到实在数据,组件创立阶段完结。这个阶段能够进行dom操作,能够初始化一些第三方ui插件。
- beforeUpdate
数据被更新时调用,然而未出现到页面上。
- updated
数据更新后虚构dom从新渲染后调用。
- beforeDestroy
实例被销毁前调用,组件data、methods等依然能够被失常拜访。
- destroyed
组件销毁实现后调用,data、methods都不可应用了。
4、说一说vue的双向绑定。