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源码解析之 源码调试
相关推荐
卸任7 小时前
Vibe coding工具使用心得
前端·ai编程
brien98 小时前
为什么模型标称 1M,Google Antigravity 聊到 256K 却突然失忆?我们给它做了个原生行内监控圆环
前端
修炼的dance8 小时前
录屏关键帧间隔多少合适?六档实测,2秒到10秒小了75.6%
前端
Lank_M8 小时前
关键帧从1秒拉到10秒,录屏小87.3%,摄像头小10.8%
前端
补码缩写8 小时前
用 ffprobe 拆录屏,八成字节在 29 个关键帧上
前端
百思不得小李8 小时前
一个复杂的动态表单是如何实现的
前端·设计模式
陈随易8 小时前
Cmder 停更 17 个月,2.0 支持 Windows Terminal
前端·后端·程序员
风骏时光牛马9 小时前
前沿视界
前端
kyriewen9 小时前
我扫了 814 个依赖,97 个还敢要 Node 10
前端·javascript·程序员
陈随易9 小时前
3000 万人在用的翻译插件,重写一遍就是一门生意
前端·后端·程序员