摘要: 我昨天刚刚使用angular cli和ng update命令将我的angular webproject从7.2.15版本更新到8.1.2。但是现在,如果我尝试调试我的打字稿代码,那么断点突然在Visual Studio Community 2019中不再起作用了吗?
因此,当我激活一个断点时,该断点会变成白色并显示标签文本,内容如下:断点已设置但尚未绑定。
我已经尝试过的操作: 使用google时,我发现其他用户有类似的问题,他们通过在tsconfig.json中进行设置解决了该问题。
"sourceMap": true
对我来说很不幸,因为我的tsconfig.json已经将sourceMap属性设置为true,但断点仍然没有被击中,所以这并没有改变。
我的猜测是,角度更新多少会覆盖某些文件中的某些设置,而我完全不知道。
显示一些代码: 在查看我的提交的比较时,我注意到在tsconfig.json和package.json文件中,许多其他内容也发生了变化,例如:
tsconfig.json
+ "downlevelIteration": true,
- "module": "es2015",
+ "module": "esnext",
- "target": "es5",
+ "target": "es2015",
package.json:
- "@angular-devkit/build-angular": "^0.12.4",
+ "@angular-devkit/build-angular": "~0.801.1",
- "codelyzer": "~4.5.0",
+ "codelyzer": "^5.0.1",
- "zone.js": "~0.8.29"
+ "zone.js": "~0.9.1"
- "typescript": "3.1.6"
+ "typescript": "3.4.5"
tslint.json:
- "use-input-property-decorator": true,
- "use-output-property-decorator": true,
- "use-host-property-decorator": true,
+ "no-inputs-metadata-property": true,
+ "no-outputs-metadata-property": true,
+ "no-host-metadata-property": true,
预期的结果/行为:预期会达到断点,因此我可以看到代码中发生了什么。但是正如所说的,断点只会变白,不会被束缚。
最后一个问题:最后,我的问题是:如何在角度8更新后如何在VS2019中再次使用断点?
(21.07.2019)编辑1:同时,我还尝试删除ClientApp文件夹中的“ node_modules”文件夹,然后使用npm install重新安装。不幸的是,断点仍然不会被击中。
(22.07.2019)编辑2“这不能解决吗?” :好像将angular还原到7.2.15版本已经解决了断点问题,我可以再次查看我的断点。尽管我对这种方法不太满意,因为将其更新到当前版本会很棒。 I also opened a case over at github on the official @angular/cli hub, regarding this issue.如果有人有更好的解决方案从@ 7.2.15升级到@latest稳定版,我将保持开放状态。
谢谢
答案 0 :(得分:1)
从Angular 8.1升级到8.2时,我发现必须将@ angular-devkit / build-angular从0.803.8降级到0.801.2.。
如https://github.com/angular/angular-cli/issues/15139中所述,原因似乎是launch.json中的sourceMap中断了。对我来说,它破坏了sourceMapPathOverrides。
即使它指出它在angular-cli 8.2.1中已修复,也无法在cli 8.3.8中使用。
答案 1 :(得分:0)
我终于找到了对我有用的解决方案。
我的错误:我相信我的错误是试图同时更新Angular和Angular材质!
通过致电
{ng update --all
或链接ng update @angular/core @angular/cli @angular/materials @angular/cdk
之类的更新命令,导致ng-cli混淆@ angular / core / cli 和 @ angular / material / cdk之间的依赖关系...
解决方案:相反,我必须在两个单独的步骤中使用@latest的一种特殊情况来做到这一点:
ng update @angular/core@latest @angular/cli@latest
注意:使用@latest安装可以从7更新的最新可用Angular,因此在本例中为8 ...
那之后我跑了
ng update @angular/material @angular/cdk
注意:,如果没有@latest,因为自从我已经将Angular更新到版本8,否则它将把Angular依赖关系更新到版本9(我尝试过,必须将更新两次还原为c:叹气)
然后正确安装了具有最新@angular-devkit/build-angular
的Angular 8,我的断点将在Visual Studio中再次工作。
希望这在遇到依赖关系问题时对某人有帮助!
干杯!
答案 2 :(得分:-1)
将“ @ angular-devkit / build-angular”:“ 0.801.2”更改为“ @ angular-devkit / build-angular”:“ 0.801.0”