Angular2使用vscode斷點(diǎn)調(diào)試ts文件的方法
VSCode自帶debugger工具,管理后臺(tái)項(xiàng)目使用angular2,試了下調(diào)試ts文件十分方便。下面是具體的實(shí)現(xiàn)步驟以及踩的坑。當(dāng)你調(diào)試出來(lái)后,回頭看這個(gè)設(shè)置還是十分簡(jiǎn)單的。我使用的是ng-cli創(chuàng)建的項(xiàng)目。后面再補(bǔ)充一般項(xiàng)目的調(diào)試,感覺也差不多。
解決了 “由于未找到生成的代碼,已忽略斷點(diǎn)(是否是源映射問(wèn)題?) ” ,參考下面的 我的環(huán)境配置
我的環(huán)境配置
1. node v7.3.0
2. npm 3.10.10
3. ng >= 1.3 // 這一點(diǎn)非常重要,我一開始的版本低于這個(gè)版本,就一直報(bào) “由于未找到生成的代碼,已忽略斷點(diǎn)(是否是源映射問(wèn)題?) ”
4. 在vscode中安裝 vscode for chome 插件, 版本要3.1.4以上
5. 生成launch.json, 文件內(nèi)容改為以下內(nèi)容
{ "version": "0.2.0", "configurations": [ // 這個(gè)數(shù)組里包含了可以包含多個(gè)配置對(duì)象 { "name": "ng serve", // 配置對(duì)象的名稱,你可以選擇其中一個(gè)配置運(yùn)行調(diào)試 "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這個(gè)插件:
插件安裝
第二步修改launch.json配置:
在項(xiàng)目中生成chrome的launch.json文件
第三步更改lauch.json文件配置:
更改后的launch.json
第四步啟動(dòng)調(diào)試:
注意:該調(diào)試需要你在vscode的終端中已經(jīng)執(zhí)行過(guò)ng serve啟動(dòng)過(guò)項(xiàng)目,否則無(wú)法調(diào)試
這里會(huì)生成三個(gè)select選項(xiàng),依次是launch.json里三個(gè)對(duì)象的name
啟動(dòng)調(diào)試
第五步啟動(dòng)后展示:
先在需要調(diào)試的ts頁(yè)面中打下斷點(diǎn),點(diǎn)擊啟動(dòng)調(diào)試按鈕后, 會(huì)為項(xiàng)目打開一個(gè)新的chrome頁(yè)面,然后需要刷新頁(yè)面才能開始斷點(diǎn)調(diào)試
vscode自動(dòng)打開新的chrome窗口頁(yè)面,刷新該頁(yè)面后即可如下調(diào)試
這是最后可調(diào)試的頁(yè)面
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Angular 2應(yīng)用的8個(gè)主要構(gòu)造塊有哪些
這篇文章主要為大家詳細(xì)介紹了Angular 2應(yīng)用的8個(gè)主要構(gòu)造塊,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10angular.js指令中transclude選項(xiàng)及ng-transclude指令詳解
這篇文章主要研究一下如何使用ng-transclude指令,以及指令的transclude選項(xiàng)的相關(guān)資料,文中介紹的非常詳細(xì),并給出了完整的示例代碼大家參考學(xué)習(xí),需要的朋友們下面來(lái)一起看看吧。2017-05-05Angular 4.X開發(fā)實(shí)踐中的踩坑小結(jié)
這篇文章主要給大家介紹了關(guān)于Angular 4.X開發(fā)實(shí)踐中的一些踩坑經(jīng)驗(yàn),文中主要介紹的是使用ngIf或者ngSwitch出錯(cuò)以及多級(jí)依賴注入器的相關(guān)內(nèi)容,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-07-07AngularJS使用ng-repeat和ng-if實(shí)現(xiàn)數(shù)據(jù)的刪選顯示效果示例【適用于表單數(shù)據(jù)的顯示】
這篇文章主要介紹了AngularJS使用ng-repeat和ng-if實(shí)現(xiàn)數(shù)據(jù)的刪選顯示效果,非常適用于表單數(shù)據(jù)的顯示使用,涉及ng-repeat和ng-if命令的相關(guān)使用技巧,需要的朋友可以參考下2016-12-12AngularJS控制器controller正確的通信的方法
AngularJS中的controller是個(gè)函數(shù),用來(lái)向視圖的作用域($scope)添加額外的功能,我們用它來(lái)給作用域?qū)ο笤O(shè)置初始狀態(tài),并添加自定義行為2016-01-01Angularjs自定義指令實(shí)現(xiàn)分頁(yè)插件(DEMO)
由于最近的一個(gè)項(xiàng)目使用的是angularjs1.0的版本,涉及到分頁(yè)查詢數(shù)據(jù)的功能,后來(lái)自己就用自定義指令實(shí)現(xiàn)了該功能,下面小編把實(shí)例demo分享到腳本之家平臺(tái),需要的朋友參考下2017-09-09Angular.js通過(guò)自定義指令directive實(shí)現(xiàn)滑塊滑動(dòng)效果
這篇文章主要給大家介紹了關(guān)于Angular.js如何通過(guò)自定義指令directive實(shí)現(xiàn)滑塊滑動(dòng)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用angularjs具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。2017-10-10快速解決angularJS中用post方法時(shí)后臺(tái)拿不到值的問(wèn)題
今天小編就為大家分享一篇快速解決angularJS中用post方法時(shí)后臺(tái)拿不到值的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08