当前位置: 首页 > 知识库问答 >
问题:

未绑定断点-角度、VS代码、Chrome、PWA

赵英资
2023-03-14

版本:

Angular CLI: 11.2.11
Node: 14.16.0
VS Code: 1.59.0
Chrome: 92.0.4515.131 
Debugger for Chrome (Nightly): v2020.2.15300
JavaScript Debugger (Nightly): v2021.8.217
(No other VS Code extensions loaded)

环境

Windows 10-以受限用户身份运行。除了批准的软件,我无法安装任何东西,这意味着,我只能使用上面的Node版本,我可以升级VS代码,但不能安装特定的版本,等等。

发射json:

    {
        "name": "Launch PWA-Chrome",
        "request": "launch",
        "type": "pwa-chrome",
        "url": "http://localhost:4200/",
        "webRoot": "${workspaceFolder}"
    },
    {
        "name": "Attach to Chrome",
        "port": 9222,
        "request": "attach",
        "type": "pwa-chrome",
        "webRoot": "${workspaceFolder}"
    }

如何,何时:

  • 对于配置为PWA的应用程序发生。在任意位置设置断点并获取“未绑定断点”
  • 在启动Chrome和连接Chrome(在调试模式下)时发生
  • 不适用于非PWA标准角度应用程序-我可以调试非PWA标准角度应用程序
  • 以(本地)管理员或受限用户身份登录Windows时发生。没什么区别

研究和我所尝试的:

  • 我的情况与此不同:未绑定断点与代码| Chrome | Angular。我的是PWA,当以“ng serve”开头时,我总是有一个未绑定的断点

共有2个答案

裘臻
2023-03-14

您是否可以通过以下方式进行调试:

// ... code    
debugger
// ... code

,在你的代码里?

萧阳波
2023-03-14

Angular builds使用各种策略优化脚本。你应该禁用它。使用以下配置设置。关键是禁用构建优化和缩小。调试会话结束后,可以将它们恢复为原始值。

"sourceMap": true,
"buildOptimizer": false,
"optimization": false,
"serviceWorker": false

如果上述方法不起作用,请尝试此组合显式禁用每个资源类型的优化

"sourceMap": true,
"buildOptimizer": false,
"serviceWorker": false,
"optimization": { 
    "scripts": false,
    "styles": false,
    "fonts": false
}

进一步阅读:https://angular.io/guide/workspace-config#optimization-配置

VS代码使用一个名为launch的文件。json。确保文件具有正确的配置。下面是一个示例配置。调整应用程序的详细信息(确保从VS代码中使用启动/调试配置debug my pwa app

{  
    "version": "0.2.0",  
    "configurations": [  
        {  
            "type": "pwa-chrome",
            "request": "launch",
            "name": "debug-my-pwa-app",
            "url": "http://localhost:4200",
            "webRoot": "${workspaceFolder}"
        }  
    ]  
}
 类似资料:
  • 我正在使用vscode和Angular,我无法设置触发的断点。所有断点都设置为未绑定断点。 我的环境: 版本:1.64.2(用户设置)日期:2022-02-09T22:02:28.252Z电子:13.5.2Chromium:91.0.4472.164Node.js:14.16.0 V8: 9.1.269.39-电子.0 OS:Windows_NTx64 10.0.22000 我的发射。json }

  • 我已经成功地通过Chrome调试器扩展在Chrome中调试了angular应用程序,并自动创建了设置。但是(发生了一些事情),在我的一个Windows 7重新启动后,我得到了不活跃的断点。我想它受到Windows路径环境变量更改的影响。我为什么这么想?我收到这样一条消息:“路径值不正确,是否要修复它?”当Windows启动时。不幸的是,我无法重现我的旧路径值。这可能是巧合,但在这种情况下,调试不起

  • 一般来说,当我想调试时,我只需要设置断点,在VSCode中运行调试,然后在Unity3D中进入播放模式,如果它捕获任何断点,Unity3D将暂停并导航到VSCode中的断点。但是最近,我不能再这样做了。 这个问题发生在unity ver 2019和2020,我认为问题不在于我的编辑器,而在于我的VSCode和一些配置,但不知道如何解决它。当我在VSCode中运行调试时,它仍然在调试控制台中连接Un

  • 我想通过代码强制Chrome调试器中断一行,或者使用某种注释标记,比如。

  • 问题内容: 我想强制Chrome调试器 通过代码 或使用某种注释标签(例如)来中断一行 代码。 问题答案: 您可以在代码中使用。如果开发者控制台已打开,则执行将中断。它也可以在萤火虫中使用。

  • Angular 1不接受事件,它只接受事件。 另一方面,Angular 2接受和事件,这两者似乎在做同一件事。 有什么不同吗? 哪一个性能最好? NGModelChange: vs变化: