Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript Karma测试中的类型脚本断点不';不要在vscode中使用chrome调试器_Typescript_Visual Studio Code_Google Chrome Devtools_Karma Runner_Aurelia - Fatal编程技术网

Typescript Karma测试中的类型脚本断点不';不要在vscode中使用chrome调试器

Typescript Karma测试中的类型脚本断点不';不要在vscode中使用chrome调试器,typescript,visual-studio-code,google-chrome-devtools,karma-runner,aurelia,Typescript,Visual Studio Code,Google Chrome Devtools,Karma Runner,Aurelia,我已经看到并阅读了很多他们各自的答案,以及答案。然而,没有人帮我解决我的问题 我有一个带有Typescript和Webpack的Aurelia应用程序。我用Karma运行测试,它运行得很好(包括--watch)。现在我想用VSCode调试我的测试。已安装并且原则上可以工作:我可以插入调试器语句,以便调试器在该点中断 然而,断点不会被击中。我尝试了使用和不使用源地图。我的启动配置如下所示: { "type": "chrome", "request": "at

我已经看到并阅读了很多他们各自的答案,以及答案。然而,没有人帮我解决我的问题

我有一个带有Typescript和Webpack的Aurelia应用程序。我用Karma运行测试,它运行得很好(包括
--watch
)。现在我想用VSCode调试我的测试。已安装并且原则上可以工作:我可以插入
调试器语句,以便调试器在该点中断

然而,断点不会被击中。我尝试了使用和不使用源地图。我的启动配置如下所示:

    {
        "type": "chrome",
        "request": "attach",
        "name": "attach to karma's chrome",
        "port": 9333,
        "webRoot": "${workspaceRoot}",
        "sourceMaps": true,
        "pathMapping": {
            "/": "${workspaceRoot}/",
            "/base/": "${workspaceRoot}/"
        },
        "sourceMapPathOverrides": {
            //"webpack:///./*": "${webRoot}/*",
            //"webpack:///src/*": "${webRoot}/*",
            //"webpack:///*": "*",
            //"webpack:///./~/*": "${webRoot}/node_modules/*"
            "webpack:///myproject/./*": "${webRoot}/*",
            "webpack:///myproject/src/*": "${webRoot}/*",
            "webpack:///myproject/*": "*",
            "webpack:///myproject/./~/*": "${webRoot}/node_modules/*"
        },
        "trace": "verbose"
    }
webRoot
在我看来很不错,它是我可以在源地图中找到的基本文件夹。
sourceMapPathOverrides
可能看起来很奇怪。原因是我在源代码映射中找到了类似
webpack://myproject/./test/unit/type-transformer/base.spec.ts
。我还尝试了被注释的配置,也没有任何覆盖

日志显示如下内容:

From client: setBreakpoints({"source":{"name":"base.spec.ts","path":"/path/to/myproject/test/unit/type-transformer/base.spec.ts"},"lines":[13],"breakpoints":[{"line":13}],"sourceModified":false})
To client: {"seq":0,"type":"event","event":"output","body":{"category":"telemetry","output":"setBreakpointsRequest","data":{"Versions.DebugAdapterCore":"6.6.0","Versions.DebugAdapter":"4.8.0","fileExt":".ts"}}}
To client: {"seq":0,"type":"response","request_seq":3,"command":"setBreakpoints","success":true,"body":{"breakpoints":[{"verified":false,"line":13,"message":"The breakpoint will be ignored, because the generated code cannot be found (path mapping problem?).","id":1000}]}}
(这条消息对我来说是德语的,因此可能与原始的英语消息不完全匹配。)我发现奇怪的是,文件系统上的路径被发送到了chrome(如
path
)。不知道该如何将其解析为源映射中的正确条目

如何配置调试器以使断点工作