试图发出put请求以更新Angular 8中的JSON
HTML文件:试图发出put请求以更新Angular 8中的JSON,angular,typescript,Angular,Typescript,HTML文件: <td> <a > <button *ngIf="enableEdit && enableEditIndex == i" (click)="enableEdit=false; cancel()" class="btn page-secondary-action-btn" >Cancel</button>
<td>
<a >
<button *ngIf="enableEdit && enableEditIndex == i" (click)="enableEdit=false; cancel()" class="btn page-secondary-action-btn" >Cancel</button>
<button *ngIf="enableEdit && enableEditIndex == i" id="saveBtn" class="btn page-primary-action-btn" (click)="saveSegment()" type="submit">Save</button>
<i class="material-icons" *ngIf="i != enableEditIndex || enableEditIndex == null" (click)="enableEditMethod($event, i)" style="font-weight:bold; font-style:inherit ;color: green;">
edit
</i>
</a>
</td>
和服务文件:
saveBlog(data: blog) {
const body = {
id: data.id,
name: data.name,
status: data.status,
active: data.active,
modifiedAt: data.modifiedAt,
};
return this.http.put(this.mainUrl + '/blog/' + data.id , body);
}
在这里,我试图编辑数据并将其保存到我的web api中,但该过程不起作用,因此出现了如图所示的错误
您尚未在函数中传递参数
像这样:
<li *ngFor="let data of list">
<button (click)="saveSegment(data)"> Click </button>
</li>
从html调用saveSegment时,数据参数丢失,只需添加它:
…你能分享一下错误吗?我附上了一个关于错误的屏幕截图,我发现这个错误仍然不起作用,数据没有得到更新控制台。记录“可编辑数据”,数据;在屏幕截图中,我检查了它是否未定义。您必须从调用saveSegment函数的位置传递数据。我已经在函数中传递了*ngFor参数。我没有在代码中添加click=saveSegmentdata。现在,未定义的错误已被排序,我正在获取控制台输出,但数据仍然无法获取在后端更新。同样的错误是showni已经尝试过了,但是数据仍然没有在WEB上更新。是的,你可以在下面的链接中找到完整的代码。我做了一些改进,尝试让我知道你的反馈是的,我试着在给定的代码中添加ng容器,但是还是一样。发送put请求时有错误吗?复制整个html和ts文件,而不仅仅是表体中的ng container标记,我用模拟api进行了尝试,效果很好
(click)="saveSegment(data)"
<li *ngFor="let data of list">
<button (click)="saveSegment(data)"> Click </button>
</li>
<button *ngIf="enableEdit && enableEditIndex == i" id="saveBtn" class="btn page-primary-action-btn" (click)="saveSegment(data)" type="submit">Save</button>