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源码解析之 源码调试
相关推荐
lichenyang4539 小时前
Docker 学习笔记(一):为什么需要镜像、容器和仓库?
前端
kyriewen9 小时前
别再对着 TypeScript 报错发呆了:我把 10 个最常见的红色波浪线翻译成了人话
前端·javascript·typescript
IT_陈寒9 小时前
SpringBoot自动配置的坑,我的API突然就404了
前端·人工智能·后端
暴走的小呆10 小时前
Vue 2 中 Object 的变化侦测:从 getter/setter 到 Dep、Watcher、Observer
vue.js
奇奇怪怪的10 小时前
Embedding 模型 10+ 横向评测
前端
陈广亮10 小时前
Monorepo 从 0 到 1 实操指南 2026 版:pnpm catalogs + Turborepo 2.x + changesets 全链路
前端
子兮曰10 小时前
OpenMontage 深度解剖:你的 AI 编程助手,其实是个视频工作室
前端·后端·ai编程
敲代码的鱼10 小时前
PDF 预览与签名批注写回 支持安卓 iOS 鸿蒙 UTS插件
android·前端·ios
英勇无比的消炎药10 小时前
TinyVue v-auto-tip: 文本超长自动提示的优雅方案
vue.js