Iceworks Debug

2021-05-20 20:29 更新

使用 VS Code 和 Chrome 對源碼進(jìn)行調(diào)試。

debug-demo

點(diǎn)擊文件右上角的 debug 按鈕啟動 npm run start。

若希望在 VS Code 中進(jìn)行斷點(diǎn)調(diào)試,可在您的工程目錄中插入 .vscode/launch.json 和 .vscode/tasks.json ,并啟動 VS Code Debug。 并安裝 Debugger for Chrome 插件。

PS: 可將 .vscode 目錄添加至 .gitignore 配置中。

launch.json

推薦配置如下,更多配置可參考 VS Code debug 文檔_blano。

  1. {
  2. "version": "0.2.0",
  3. "configurations": [
  4. {
  5. "type": "chrome", // 通過 'Debugger for Chrome' 擴(kuò)展啟動 Chrome 預(yù)覽。
  6. "request": "launch", // 調(diào)試會啟動新的 Chrome 實(shí)例,替換 attach 可選取當(dāng)前 Chrome 實(shí)例,但需要重啟 Chrome
  7. "name": "Iceworks Debug",
  8. "url": "http://localhost:3333", // 當(dāng)前工程調(diào)試服務(wù)地址
  9. "urlFilter": "http://localhost:3333/**/*", // 監(jiān)聽當(dāng)前工程調(diào)試服務(wù)所有的 url
  10. "webRoot": "${workspaceFolder}",
  11. "userDataDir": "${workspaceFolder}/.vscode/chrome-debug-user-data", // 用于存放 Chrome 的用戶數(shù)據(jù)(安裝的瀏覽器插件等)
  12. "preLaunchTask": "Iceworks Start Background Tasks",
  13. "postDebugTask": "Iceworks Stop Background Tasks"
  14. }
  15. ]
  16. }

tasks.json

推薦配置如下,更多配置可參考 [VS Code tasks 文檔_blank_nofollow]( https://code.visualstudio.com/docs/editor/tasks#vscode)。

  1. {
  2. "version": "2.0.0",
  3. "tasks": [
  4. {
  5. "label": "Iceworks Start Background Tasks",
  6. "type": "npm",
  7. "script": "start",
  8. "isBackground": true,
  9. "problemMatcher": {
  10. "pattern": {
  11. "regexp": "ERROR in .*" // build-scirpt 日志
  12. },
  13. "background": {
  14. "beginsPattern": ".*(@alib/build-scripts|ice\\.js|rax\\.js).*", // build-scirpt 日志
  15. "endsPattern": ".*http://localhost:3333.*" // build-scirpt 日志
  16. }
  17. }
  18. },
  19. {
  20. "label": "Iceworks Stop Background Tasks",
  21. "type": "process",
  22. "command": [
  23. "${command:workbench.action.tasks.terminate}", // VS Code 內(nèi)置命令
  24. "${command:workbench.action.acceptSelectedQuickOpenItem}" // VS Code 內(nèi)置命令
  25. ]
  26. }
  27. ]
  28. }

更改端口號

若需要 debug 的工程調(diào)試鏈接不為 http://localhost:3333 時,可以修改 launch.json 中的 urlurlFilter 配置的地址鏈接,以及 tasks.json 中的 endsPattern 為新的調(diào)試地址即可。

Chrome 實(shí)例

默認(rèn)開啟新的 Chrome 實(shí)例進(jìn)行調(diào)試。首次啟動為無數(shù)據(jù) Chrome (無用戶態(tài),無插件),在調(diào)試過程操作的數(shù)據(jù)將得以保存(歷史,安裝插件等)。

Rax 項(xiàng)目,推薦安裝 Guan Extension。

其他

如果想使用常用登錄態(tài)的 Chrome 進(jìn)行提示,可切換 launch.json 中的 request 配置為 attach,且必須關(guān)閉當(dāng)前 Chrome。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號