javascript - TypeScript - La declaración "debugger;" no funciona mientras se trabaja con el entorno QA en Angular
Estoy trabajando en una aplicación de Angular con una configuración de varios entornos. Estoy enfrentando problemas cuando intento configurar algunos puntos de depuración usando debugger;
Estoy usando ng serve -o --webconfiguration==qa para compilar node_modules y ejecutar el servidor.
Sin embargo, cuando uso ng serve -o, se alcanzan los puntos de depuración.
¿Cómo configuro mi aplicación para alcanzar puntos de depuración mientras trabajo con el entorno de QA?
Aquí está mi configuración - Versión de Angular CLI - 7.3.8 Versión de Node - 10.15.3 NPM - 6.4.1 TypeScript - 3.1.6
angular.json
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"Media-Service-Status": {
"root": "",
"sourceRoot": "src",
"projectType": "application",
"prefix": "app",
"schematics": {},
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:browser",
"options": {
"outputPath": "dist/Media-Service-Status",
"index": "src/index.html",
"main": "src/main.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "src/tsconfig.app.json",
"assets": [
"src/favicon.ico",
"src/assets"
],
"styles": [
"src/styles.css"
],
"scripts": []
},
"configurations": {
"production": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.prod.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
},
"qa": {
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.qa.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
},
"webvenus":{
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.webvenus.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
},
"aliasuat":{
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.aliasuat.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
},
"websaturn":{
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.websaturn.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
},
"localDev":{
"fileReplacements": [
{
"replace": "src/environments/environment.ts",
"with": "src/environments/environment.localDev.ts"
}
],
"optimization": true,
"outputHashing": "all",
"sourceMap": false,
"extractCss": true,
"namedChunks": false,
"aot": true,
"extractLicenses": true,
"vendorChunk": false,
"buildOptimizer": true
}
}
},
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"options": {
"browserTarget": "Media-Service-Status:build",
"port":58911
},
"configurations": {
"production": {
"browserTarget": "Media-Service-Status:build:production"
},
"webvenus":{
"browserTarget": "Media-Service-Status:build:webvenus"
},
"aliasuat":{
"browserTarget": "Media-Service-Status:build:aliasuat"
},
"websaturn":{
"browserTarget": "Media-Service-Status:build:websaturn"
},
"localDev":{
"browserTarget": "Media-Service-Status:build:localDev"
}
}
},
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"options": {
"browserTarget": "Media-Service-Status:build"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "src/test.ts",
"polyfills": "src/polyfills.ts",
"tsConfig": "src/tsconfig.spec.json",
"karmaConfig": "src/karma.conf.js",
"styles": [
"src/styles.css"
],
"scripts": [],
"assets": [
"src/favicon.ico",
"src/assets"
]
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [
"src/tsconfig.app.json",
"src/tsconfig.spec.json"
],
"exclude": [
"**/node_modules/**"
]
}
}
}
},
"Media-Service-Status-e2e": {
"root": "e2e/",
"projectType": "application",
"architect": {
"e2e": {
"builder": "@angular-devkit/build-angular:protractor",
"options": {
"protractorConfig": "e2e/protractor.conf.js",
"devServerTarget": "Media-Service-Status:serve"
},
"configurations": {
"production": {
"devServerTarget": "Media-Service-Status:serve:production"
}
}
},
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": "e2e/tsconfig.e2e.json",
"exclude": [
"**/node_modules/**"
]
}
}
}
}
},
"defaultProject": "Media-Service-Status"
}
tsconfig.json
{
"compileOnSave": false,
"compilerOptions": {
"baseUrl": "./",
"outDir": "./dist/",
"inlineSourceMap": true,
"inlineSources": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": [
"node_modules/@types"
],
"lib": [
"es2017",
"dom"
]
}
}
Espero que la declaración debugger; funcione tal como está destinada. Cualquier ayuda es muy apreciada.
Gracias
Respuesta #1
No olvides lo obvio, si tu linter no permite la declaración debugger, es posible que tengas que poner una línea para ignorarla:
//eslint-disable-next-line
debugger
Respuesta #2
La declaración debugger funciona solo cuando tienes abiertos los Herramientas de desarrollo. Usa Cmd+Opt+I y selecciona el panel sources. Por favor, consulta esto para más información.
