angular - 无法在 Angular 构造函数或 OnInit 中放置断点

标签 angular typescript webpack google-chrome-devtools

我有一个 Angular 应用程序,我试图在 Chrome 或 IE 的 F12 工具中设置断点。我有简单的测试用例:

export class LoginComponent implements OnInit {
    message: string;

    constructor(private router: Router) { 
        console.log("Login Constructor");
    }

    ngOnInit() {
        console.log("Login OnInit");
    }
}

我在控制台中看到日志输出,但设置断点不起作用。我认为它几天前停止工作(不确定它是某个库、Windows 还是两个浏览器的升级)。甚至不知道从哪里开始寻找。该项目是用 webpack 构建的,我是通过路由访问这个组件的:
const appRoutes: Routes = [
{
    path: '',
    redirectTo: '/login',
    pathMatch: 'full'
},
{
    path: '/login',
    component: LoginComponent
}
...
]

请注意,该按钮单击处理程序按预期中断。

最佳答案

有时会缺少断点,因为调试器不知道源代码的位置,或者代码的执行速度比调试器想象的断点要快。在这种情况下,代码不可调试。

但是,如果您能理解 javascript,则可以直接将断点设置为 transplitted javascript 代码。 Webpack 有时会在映射文件中写入错误的源路径,因此您很难修复它们。但是这个问题从原始问题中传出。您需要做的是尝试修复错误的不同浏览器或 Webpack 版本。如果您知道这是一个错误,则应将其提交给相应的错误跟踪系统。

关于angular - 无法在 Angular 构造函数或 OnInit 中放置断点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44619419/

相关文章:

javascript - 将范围从窗口更改为 Angular View

javascript - 按下回车键不会在 Mozilla 中打开下拉菜单

css - foundation-sites 包含在 webpack 中。不能使用样式

javascript - 模块解析失败 : Unexpected character

angular - 何时应将 FormControl 标记为原始状态?

Angular 2 : Exception "No provider for t!" when creating a form

javascript - 使用 TypeScript 从表单输入中获取值

angular - 缺少必需的参数 : grant_type while accessing google token in ionic2

reactjs - 将 TypeScript 与 React HOC、React.lazy 和 forwarRef 结合使用

当导入未定义时,Webpack 4.x 不会告诉我