gpt4 book ai didi

angular - 如何断点和调试 Angular 模板?

转载 作者:太空狗 更新时间:2023-10-29 17:49:13 25 4
gpt4 key购买 nike

例如,在 React 中,您可以在 View /模板中放置一个断点并检查发生了什么。

编辑:假设我想看看这里发生了什么:

<h2>{{hero.name | uppercase}} Details</h2>
<div><span>id: </span>{{hero.id}}</div>
<div>
<label>name:
<input [(ngModel)]="hero.name" placeholder="name">
</label>
</div>

https://stackblitz.com/angular/kopjlplrpanj?file=src%2Fapp%2Fheroes%2Fheroes.component.html

我想检查此模板范围内的变量。查看它们的值。

最佳答案

有人会说调试模板会随 Ivy 一起提供,但我会说我们也可以轻松调试当前的 View 引擎。

例如,这里有一些我会使用的选项:

1) Angular 为每个组件生成 ngFactory,可以通过路径 ng://ModuleName/ComponentName.ngfactory.js 找到。

每个工厂都包含两个方法 updateDirectivesupdateRenderer,您可以在其中调试变量。

enter image description here

2) 在模板中犯了一些错误

<h2>{{herox.name | uppercase}} Details</h2>
^^^^

现在您可以在您的控制台中找到目标位置

enter image description here

3) 将以下代码放在模板的开头

<ng-container *ngIf="1; let x='ngIf; debugger'">{{x}} 

你会自动移动到更新模板代码

enter image description here

更多信息见

更新:

我同意很难理解生成的代码,因此在简单的情况下您不需要它,您可以通过在某处打印它来查看值,即:

{{myVar}}

<div [attr.debug-var]="someVar">

更新2

{{ this.constructor.__proto__.constructor('', 'debugger')() }}

https://twitter.com/yurzui/status/1179436748826394626

关于angular - 如何断点和调试 Angular 模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53201723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com