如果你能帮我解决这个问题,我不知道为什么没有工作......
我使用asp.net mvc作为我的后端使用angular 4,使用postman,我的删除请求有效,但是在角度方面,我无法弄清楚为什么不是&n #39; t,没有错误...
我正在构建小角度crud应用程序并试图从我填充的表格中的同一行获取用户ID ...
我的控制台或编译器中没有任何错误,但是当我点击一个触发我的组件中的删除功能的按钮时,似乎没有发生任何事情...... 这是代码
export class user{
Id: string;
Name: string;
}
在我的服务中,我有一个正常运行的get和post方法,但删除不起作用,代码:
deleteUser(id: string) {
let headers = new Headers({ 'Content-Type': 'application/json' });
let options = new RequestOptions({ headers: headers });
return this.http.delete('http://localhost:48622/user/' + id, options)
.map(res => res.json());
}
在我的component.ts
中 userlist: user[];
DeleteUser(id: string) {
if (confirm('Are you sure to delete this record ?') == true) {
this._usermanagementservice.deleteUser(id)
.subscribe(x => {
//this populates table with names, function is working, not sure should I call it this way so my table can be updated?
this.LoadAllUsers();
})
}
}
在我的app.component.html中,我认为是主要问题..
注意我只想在同一行显示带删除按钮的用户名...
<table style="width:100%" class="table table-striped"
id="billing_history_table">
<thead class="head">
<tr>
<th>User Name</th>
<th></th>
</tr>
</thead>
<tbody>
<tr *ngFor="let u of userlist">
<td>{{u.Name}}</td>
<td><a (click)="DeleteUser(e.id)"><span class="glyphicon
glyphicon-trash"></span></a></td>
</tr>
</tbody>
</table>
答案 0 :(得分:0)
对DeleteUser(e.id)
DeleteUser(u.Id)
这就是它的样子
<table style="width:100%" class="table table-striped"
id="billing_history_table">
<thead class="head">
<tr>
<th>User Name</th>
<th></th>
</tr>
</thead>
<tbody>
<tr *ngFor="let user of userlist">
<td>{{user.Name}}</td>
<td><a (click)="DeleteUser(user.Id)"><span class="glyphicon
glyphicon-trash"></span></a></td>
</tr>
</tbody>
</table>
尝试给变量赋予正确的名称,这样可以轻松调试
答案 1 :(得分:0)
您的代码是否应该阅读
b
注意:u.Id而不是e.id
您能否确认将正确的ID传递给您的API
答案 2 :(得分:0)
问题是,在我的数据库中,列名为userId而不是id,所以当我在我的html DeleteUser(u.id)中更改为DeleteUser(u.userId)时,它工作正常!