@H_403_0@很多人习惯在 Chrome 的调试窗口中调试 Vue 代码, 或者直接使用 console.log 来观察变量值, 这是非常痛苦的一件事,需要同时打开至少 3 个窗体。个人还是更加习惯于断点调试。这篇文章将介绍如何配置 Visual Studio Code 和 Chrome 来完成直接在 VS Code 断点调试代码,并且在VS Code的调试窗口看到Chrome中console相同的值。
@H_403_0@
设置 Chrome 远程调试端口
@H_403_0@首先我们需要在远程调试打开的状态下启动 Chrome,这样 VS Code 才能 attach 到 Chrome 上: @H_403_0@Windows
@H_403_0@macOS
@H_403_0@打开控制台执行:@H_403_0@/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222
@H_403_0@
Linux
@H_403_0@打开控制台执行:@H_403_0@google-chrome --remote-debugging-port=9222
@H_403_0@
Visual Stuido Code 安装插件
@H_403_0@点击 Visual Studio Code 左侧边栏的扩展按钮, 然后在搜索框输入Debugger for Chrome并安装插件,再输入,安装完成后点击 reload 重启 VS Code @H_403_0@添加 Visual Studio Code 配置- 点击 Visual Studio Code 左侧边栏的 调试 按钮, 在弹出的调试配置窗口中点击 设置 小齿轮, 然后选择 chrome,VS Code 将会在工作区根目录生成.vscode 目录,里面会有一个 lanch.json 文件并会自动打开
- 用下面的配置文件覆盖自动生成的 lanch.json 文件内容。
修改 webpack 的 sourcemap
@H_403_0@如果你是基于 webpack 打包的 vue 项目, 可能会存在断点不匹配的问题,还需要做些修改:- 打开根目录下的 config 目录下的 index.js 文件
- 将dev 节点下的 devtool 值改为 'eval-source-map'
- 将dev节点下的 cacheBusting 值改为 false