,因爲一個問題了幾天我掙扎,我無法解釋:角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代碼的方式。 –