Vue3源码解析之 源码调试

本文为原创文章,未获授权禁止转载,侵权必究!

本篇是 Vue3 源码解析系列第 1 篇,关注专栏

前言

本系列基于 Vue 3.2.37 版本分析,可直接前往下载。

使用步骤

shell 复制代码
// 1、安装 pnpm
npm i -g pnpm

// 2、安装依赖
pnpm i

// 3、package.json 修改配置 末尾添加 -s 开启sourcemap
"build": "node scripts/build.js -s"

// 添加 `-s` 原理是在 `scripts/build.js` 文件下 设置 `sourceMap`,
// 通过 `const args = require('minimist')(process.argv.slice(2))` 获取到配置数据
// 这里使用了 `minimist` 包,将 node 命令解析成 对象数据

// 4、打包生成 vue 文件
npm run build

// 5、packages/vue/examples 文件下创建 learning 文件夹
mkdir learning

// 6、learning 文件夹下创建 html 文件
mkdir index.html

// 7、引入 vue 文件, global 文件为浏览器引入格式
<script src="../../dist/vue.global.js"></script>

// 8、案例
<body>
    <div id="app"></div>
    <script>
      const { reactive, effect } = Vue
      
      const obj = reactive({
        name: 'jc'
      })
      
      effect(() => {
        document.querySelector('#app').innerHTML = obj.name
      })

      setTimeout(() => {
        obj.name = 'cc'
      }, 2000)
    </script>
</body>

// 9、F12 打开浏览器进行 debugger 调试

调试

目录

核心文件均在 packages 目录下

md 复制代码
## compiler 编译时
- compiler-core 核心
- compiler-dom 浏览器编译时
- compiler-sfc vue文件
- compiler-ssr 服务端

## reactivity 响应式
- reactivity
    - ref
    - reactive

## runtimer 运行时
- runtime-core 核心
- runtime-dom 浏览器运行时

## shared 共享工具

## vue
src/index.ts 入口

Vue3 源码解析系列

  1. Vue3源码解析之 源码调试
相关推荐
y先森16 分钟前
CSS3中的伸缩盒模型(弹性盒子、弹性布局)之伸缩容器、伸缩项目、主轴方向、主轴换行方式、复合属性flex-flow
前端·css·css3
前端Hardy16 分钟前
纯HTML&CSS实现3D旋转地球
前端·javascript·css·3d·html
susu108301891119 分钟前
vue3中父div设置display flex,2个子div重叠
前端·javascript·vue.js
IT女孩儿1 小时前
CSS查缺补漏(补充上一条)
前端·css
吃杠碰小鸡2 小时前
commitlint校验git提交信息
前端
天天进步20153 小时前
Vue+Springboot用Websocket实现协同编辑
vue.js·spring boot·websocket
虾球xz3 小时前
游戏引擎学习第20天
前端·学习·游戏引擎
我爱李星璇3 小时前
HTML常用表格与标签
前端·html
疯狂的沙粒3 小时前
如何在Vue项目中应用TypeScript?应该注意那些点?
前端·vue.js·typescript
小镇程序员3 小时前
vue2 src_Todolist全局总线事件版本
前端·javascript·vue.js