本文概述
- 在浏览器中调试代码
让我们以一个例子来看一些特定类型的错误。
我们创建了一个名为“ testing-app”的应用。在这个应用程序中,我们在页面上有一个服务器和一个按钮,可以创建其他服务器。
在这里,“ component.html”文件包含以下代码:
<
div class="container">
<
div class="row">
<
div class="col-xs-12">
<
h2>My Servers<
/h2>
<
button class="btn btn-primary" (click)="OnAddServer()">Add Server<
/button>
<
br><
br> <
ul class="list-group">
<
li
class="list-group-item "
*ngFor="let server of servers;
let i = index"
(click)="onRemoveServer(i)">{{ server }}
<
/li>
<
/ul> <
/div>
<
/div>
component.ts文件:
import { Component } from '@angular/core';
@Component({
selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'testing-app';
servers;
OnAddServer() {
this.servers.push('Another Server Added');
}onRemoveServer(id: number) {
const position = id + 1;
this.servers.splice(position, 1);
}
}
查看输出:
现在,如果单击“添加服务器”按钮,它将不会添加任何服务器。打开浏览器控制台以查看错误类型。
文章图片
你会看到它显示未定义的“ push”属性。在这里,你可以获得有关错误的一些有用信息。
让我们检查component.ts文件:
import { Component } from '@angular/core';
@Component({
selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'testing-app';
servers;
OnAddServer() {
this.servers.push('Another Server Added');
}onRemoveServer(id: number) {
const position = id + 1;
this.servers.splice(position, 1);
}
}
在这里,我们已经声明了服务器,但是尚未初始化。因此,我们将其设置为数组格式以保留新创建的服务器。因此,将其更改为:
servers= [];
更改component.ts:
import { Component } from '@angular/core';
@Component({
selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'testing-app';
servers = [];
OnAddServer() {
this.servers.push('Another Server Added');
}onRemoveServer(id: number) {
const position = id + 1;
this.servers.splice(position, 1);
}
}
输出:
文章图片
现在,你可以看到此错误已删除。
文章图片
在浏览器中调试代码Angular预钻工具
在Google Chrome浏览器中搜索Angular Augury。
文章图片
点击添加到Chrome按钮以在Chrome上添加此工具。
文章图片
将其添加到chrome后,打开浏览器的开发人员工具并打开Augury。
文章图片
Augury是一个很棒的工具,可以分析你的Angular应用程序。打开Augury并重新加载浏览器页面。你将看到如下页面:
这是喷射器图:
文章图片
这是路由器树:
文章图片
【angular 7错误修复】这是ngModule:
文章图片
推荐阅读
- angular 7表单
- angular 7管道
- angular 7的属性绑定
- angular 7事件绑定
- angular 7字符串插入
- angular 7数据绑定
- angular 7的ngstyle指令
- angular 7的ngif指令
- angular 7指令