【发布时间】:2019-02-26 08:08:06
【问题描述】:
项目概述
我正在从事一个基于以下项目的项目:
1- 角度 6
2- Aspnet Core 2.1
场景
我正在使用下面的 Angular 代码调用获取请求
let reqHeader = new HttpHeaders({ 'Content-Type': 'application/json' });
this.http.get(this._URL).subscribe(
(data => {
this._engineersList = data[0];
this._shiftList = data[1];
console.log(data[0])
}), error => this.error
);
class Engineers {
public ID: number;
public Name: string;
}
class Shifts {
public ID: number;
public EmployeeID: number;
public EmployeeName: string;
public ShiftName: string;
public ShiftTime: string;
}
因为我的属性名称是骆驼式的。显然,我的绑定方式与我的 HTML 相同,如下所示:
<tbody>
<tr *ngFor="let engineer of _engineersList">
<td>
{{engineer.Id}}
</td>
<td>
{{engineer.Name}}
</td>
</tr>
</tbody>
我得到低于输出(无数据绑定):
但是当我将我的骆驼大小写属性转换为小写时:
<tbody>
<tr *ngFor="let engineer of _engineersList">
<td>
{{engineer.id}}
</td>
<td>
{{engineer.name}}
</td>
</tr>
</tbody>
调查结果
当我在浏览器控制台中检查我的 GET 请求的返回结果时,我发现我的 observable 返回属性是小写的。
另外,我在服务器端验证了这一点,但没有发现这样的问题。服务器在 Camel 案例中正确返回正确的数据。
我想说的是为什么我的 JSON 结果以小写形式显示和绑定我的属性名称?正如您在这篇文章的顶部看到的那样,我创建了一个模型类,它们的属性在 Camel Case 中,它们应该像在我的 HTML 上那样绑定,但它不起作用。请帮助我解决我在代码中做错的事情。希望我简要解释一下我的问题。
【问题讨论】:
-
谢谢。这就是我要搜索的内容。
标签: json angular typescript