Vue 知识点及答案

MVVM的理解

MVVM 是Model-View-ViewModel 的缩写,它是一种基于前端开发的架构模式。 在MVVM架构下,View 和 Model 之间并无直接的联系,而是经过ViewModel进行交互,Model 和 ViewModel 之间的交互是双向的, 所以View 数据的变化会同步到Model中,而Model 数据的变化也会当即反应到View 上前端

如何实现一个自定义组件,不一样组件之间如何通讯的?

props/$emit
注:组件中的数据共有三种形式:data、props、computed
vue 组件间通讯vue

nextTick

由于DOM渲染老是在队列任务完成以后才会执行,因此要在当前队列中查看下一个队列的数据能够使用nextTick
Vue生命周期的created()钩子函数进行的DOM操做必定要放在Vue.nextTick()的回调函数中,由于created时尚未渲染DOMvue-router

生命周期

image.png

虚拟dom的原理
双向绑定的原理?数据劫持?

经过数据劫持结合发布者-订阅者的方式来实现,Vue是经过Object.defineProperty() 来实现,Object.defineProperty()能够控制一个对象属性的一些特有操做,好比读写权、是否能够枚举等。vuex

Proxy 相比于 defineProperty 的优点
watch computed区别

computedsegmentfault

  • 计算属性computed,只有依赖数据发生改变时才会从新计算
  • 不支持异步,当computed内有异步操做时,没法监听数据的变化,
  • computed 属性值会默认走缓存,计算属性是基于它们的响应式依赖进行缓存的,也就是基于data中声明过或者父组件传递的props中的数据经过计算的到的值;
  • 若是一个属性是其余属性计算而来的,那么使用computed

watch缓存

  • 不支持缓存,数据变化会直接触发从新渲染
  • watch支持异步
vue-router(hash, HTML5 新增的 pushState
  • 单页应用,如何实现其路由功能---路由原理
  • vue-router如何作用户登陆权限等
  • 你在项目中怎么实现路由的嵌套
vuex的理解
相关文章
相关标签/搜索