用vscode调试

发生了一件很奇怪的事情。
我之前可以直接在vscode里下断点进行调试,但是现在断点失效了,我去chrome的开发者工具里去看,发现里面的代码似乎不是我vscode打开路径下的代码。

在chrome里下了断点,vscode这边可以有响应,但是断点的位置却是一个翻译后的js文件。

最关键的是,我昨天都还好好的,今天就不行了(昨天电脑自动升级了win11,和这个会有关系吗?)

看下是不是Vscode版本自动升级为最新版本了,降下版本应该就好了

1赞

昨天好像没有升级过vscode,或者说是什么版本呢?这边感觉是有什么设置,让代码自己跑的编译后的js代码了。

我之前的调试信息,文件都是xxx.ts,但现在变成了vm123465,点过去就是个js代码

默认自动更新,重启后升级的,降版本就好了

我觉得和vscode无关的吧,vmxxxx是creator的虚拟机,这个应该是在虚拟机中执行代码,是引擎的一部分,或者说是逻辑的一部分,和ide应该无关

我重新下了vscode,也确实没有任何作用

似乎还真的是因为vscode版本的问题。。。

根本原因其实是sourcemap的映射失效了,导致没有办法找到对应的ts代码。

谢谢老哥了

我也遇到了,蛋疼

禁用 JavaScript Debugger 和 JavaScript Debugger(Nightly)

应该安了这个吧- Debugger for Chrome 弃用先不管、还保留着,估计新版本vscode升级有啥冲突
把 “type”:改为 “legacy-chrome”, 就好了,我的 launch.json 配置如下

{

"version": "1.4.0",

"configurations": [

    {

        "name": "Creator Debug: Launch Chrome",

        "type": "legacy-chrome",

        "request": "launch",

        "url": "http://localhost:7456",

        "sourceMaps": true,

        "userDataDir": "${workspaceFolder}/.vscode/chrome",

        "diagnosticLogging": false,

        "pathMapping": {

            "/preview-scripts/assets": "${workspaceFolder}/temp/quick-scripts/dst/assets",

            "/": "${workspaceFolder}"

        }    

    }

]

}

参考 VSCode无法调试了

其实没用,这些设置我在最开始的时候就做过了。一旦vscode版本升级到1.8.1就一定会出现无法sourcemap无法映射的问题,我ts或者js的调试插件换了三四个,都是一样的。
但我把版本降回1.7.9,直接就可以用了。

vscode这个新版本可能有点问题,等之后的更新可能会修复吧。反正我一个敲代码的,说实话,老版本和新版本完全看不出区别,所以就固定老版本了,一劳永逸

1.82.0版本了,还没修复呢。最高只能使用1.79.2

我用的是,1.79.2,不至于1.7.2吧(可能你少写了?)

1.79.2 mac可以正常调试 谢谢