Angular2使用vscode斷點除錯ts檔案

Will醬發表於2017-12-15

VSCode自帶debugger工具,管理後臺專案使用angular2,試了下除錯ts檔案十分方便。下面是具體的實現步驟以及踩的坑。當你除錯出來後,回頭看這個設定還是十分簡單的。我使用的是ng-cli建立的專案。後面再補充一般專案的除錯,感覺也差不多。

解決了 “由於未找到生成的程式碼,已忽略斷點(是否是源對映問題?) ” ,參考下面的我的環境配置

我的環境配置

1. node v7.3.0
2. npm 3.10.10
3. ng >= 1.3 // 這一點非常重要,我一開始的版本低於這個版本,就一直報 “由於未找到生成的程式碼,已忽略斷點(是否是源對映問題?) ” 
4. 在vscode中安裝 vscode for chome 外掛, 版本要3.1.4以上
5. 生成launch.json, 檔案內容改為以下內容
{
  "version": "0.2.0",
  "configurations": [  // 這個陣列裡包含了可以包含多個配置物件
    {
      "name": "ng serve", // 配置物件的名稱,你可以選擇其中一個配置執行除錯
      "type": "chrome", 
      "request": "launch",
      "url": "http://localhost:4200/#",
      "webRoot": "${workspaceRoot}"
    },
    {
      "name": "ng test",
      "type": "chrome",
      "request": "launch",
      "url": "http://localhost:9876/debug.html",
      "webRoot": "${workspaceRoot}"
    },
    {
      "name": "ng e2e",
      "type": "node",
      "request": "launch",
      "program": "${workspaceRoot}/node_modules/protractor/bin/protractor",
      "protocol": "inspector",
      "args": ["${workspaceRoot}/protractor.conf.js"]
    }      
  ]
}
複製程式碼

1. ng-cli版本更新

1. 先解除安裝
npm uninstall -g angular-cli
npm uninstall --save-dev angular-cli
2. 全域性安裝
npm uninstall -g @angular/cli
npm cache clean
# if npm version is > 5 then use `npm cache verify` to avoid errors (or to avoid using --force)
npm install -g @angular/cli@latest
3. 本地安裝
npm install --save-dev @angular/cli@latest
複製程式碼

2. launch.json配置修改

第一步先要安裝vscode for chrome這個外掛:

外掛安裝

第二步修改launch.json配置:

在專案中生成chrome的launch.json檔案

第三步更改lauch.json檔案配置:

更改後的launch.json

第四步啟動除錯:

注意:該除錯需要你在vscode的終端中已經執行過ng serve啟動過專案,否則無法除錯 這裡會生成三個select選項,依次是launch.json裡三個物件的name

啟動除錯

第五步啟動後展示:

先在需要除錯的ts頁面中打下斷點,點選啟動除錯按鈕後, 會為專案開啟一個新的chrome頁面,然後需要重新整理頁面才能開始斷點除錯

vscode自動開啟新的chrome視窗頁面,重新整理該頁面後即可如下除錯

這是最後可除錯的頁面

vscode.gif

相關文章