我在调试 Vue 应用程序时遇到问题,因为步进可以跳过行或无法在有效行上设置断点。
我想这是一个 sourcemap 问题,但不确定从哪里开始挖掘。可能是 Vue-loader、Webpack 或 Babel 之一。
测试:
视图:2.6.10
vue-cli 4.1.2
该问题可以重现如下:
创建新的 Vue 项目:
vue 创建测试
只需使用默认值
光盘测试
npm 运行服务
将 HelloWorld.vue 替换为:
<template>
<button @click="save()">
Save
</button>
</template>
<script>
export default {
methods: {
async save() {
debugger;
let valid = false;
if (valid) {
return;
} else {
console.log("Hi")
}
}
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
在 Chrome 中打开 devtools,点击保存按钮并尝试在行上放置断点:
if (valid) {
Run Code Online (Sandbox Code Playgroud)
在我的测试中,断点没有设置。
如果我从 save 方法中删除async,则可以设置断点。
使用 Chrome 79 和 Firefox 73 进行测试。 …