,因为一个问题了几天我挣扎,我无法解释:角CLI // //打字稿铬调试> Arrow功能丧失方面
- 我有一个角4 CLI项目运行良好
- 我有我的组件的方法的一个箭头的功能,设置在我的组件属性
- 当我在我的箭功能将断点在Chrome浏览器开发工具(或VS代码调试器针对Chrome浏览器相同的行为)时,这个背景并不局限于组件
- 但如果我执行的代码,它的工作原理以及
示例代码:
export class MyComponent {
private message = 'Im here!';
constructor() {
const test =() => {
console.log(this.message);
};
test();
}
}
如果我把一个断点上的console.log(this.message)的线,这种情况下会undefined在调试器中,但在执行时,它会写'Im here!'在我的控制台。
你有没有经历过这个问题?我的源地图idk有问题吗?
So ** _ this **,转译器生成的上下文变量被调试器识别。这工作,但不方便,是没有办法使用“真正的”**这个**上下文 –
我有同样的问题,只是在铬开发工具,我可以看到“这个”的价值,但在vscode它是未定义的 – benshabatnoam
尝试“_this”而不是“this”。我发现这是因为编译器生成输出js代码的方式。 –