# 概述

# 关于本文

本文通过对Vue3源码删繁就简,深入了解Vue3内部实现逻辑。并结合与Vue2的对比,分析两者之间的异同。

# Vue3与Vue2的对比

  • 对于数据变动的监听,Vue2基于Object.defineProperty实现,而Vue3基于Proxy实现
  • Vue2使用JavaScript + Flow开发,而Vue3使用TypeScript开发
  • Vue2采用面向对象的编程范式,而Vue3采用的是函数式编程
  • Vue3新增了组合式API(Composition API),兼容了原来的Option API,而Vue2是基于Option API

# Vue3的整体结构

Vue3主要由数据响应系统reactivity、渲染器renderer、编译器compiler这几部分组成