Vue和React面试知识点

Posted binmengxue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue和React面试知识点相关的知识,希望对你有一定的参考价值。

一、对于MVVM的理解?

MVVM 是 Model-View-ViewModel 的缩写。
Model代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑。
View 代表UI 组件,它负责将数据模型转化成UI 展现出来。
ViewModel 监听模型数据的改变和控制视图行为、处理用户交互,简单理解就是一个同步View 和 Model的对象,连接Model和View。
在MVVM架构下,View 和 Model 之间并没有直接的联系,而是通过ViewModel进行交互,Model 和 ViewModel 之间的交互是双向的, 因此View 数据的变化会同步到Model中,而Model 数据的变化也会立即反应到View 上。
ViewModel 通过双向数据绑定把 View 层和 Model 层连接了起来,而View 和 Model 之间的同步工作完全是自动的,无需人为干涉,因此开发者只需关注业务逻辑,不需要手动操作DOM, 不需要关注数据状态的同步问题,复杂的数据状态维护完全由 MVVM 来统一管理。

二、VUE和react生命周期

VUE:

  • beforeCreate  已经完成实例
  • created   Data已经完成
  • beforeMount data和模板已经生成还没有完成挂载
  • mounted  data和虚拟DOM挂载完成
  • beforeUpdate
  • updated 数据更新,此钩子函数在服务器一开始渲染的时候不被调用
  • beforeDestroy 实例销毁
  • destroyed  实例销毁

react:

  • 初始化阶段:

    • getDefaultProps:获取实例的默认属性
    • getInitialState:获取每个实例的初始化状态
    • componentWillMount:组件即将被装载、渲染到页面上
    • render:组件在这里生成虚拟的 DOM 节点
    • componentDidMount:组件真正在被装载之后
  • 运行中状态:

    • componentWillReceiveProps:组件将要接收到属性的时候调用
    • shouldComponentUpdate:组件接受到新属性或者新状态的时候(可以返回 false,接收数据后不更新,阻止 render 调用,后面的函数不会被继续执行了)
    • componentWillUpdate:组件即将更新不能修改属性和状态
    • render:组件重新描绘
    • componentDidUpdate:组件已经更新
  • 销毁阶段:

    • componentWillUnmount:组件即将销毁

二、Vue组件间的参数传递和react组件间传递参数

 

以上是关于Vue和React面试知识点的主要内容,如果未能解决你的问题,请参考以下文章

vue 面试时需要准备的知识点

面试视频知识点整理1-13(mvvm框架)

Vue面试中,经常会被问到的面试题/Vue知识点整理

vue基本知识点总结—面试必备

Vue面试中,经常会被问到的面试题/Vue知识点整理

Vue 面试中常问知识点整理