【发布时间】:2019-03-19 07:36:45
【问题描述】:
我有一个返回 JSON 数据的 API。
返回的数据不是我想要的结构,所以我必须改变它。
{
"@odata.context":"xxxxxx",
"id":"xxxxxxxx",
"businessPhones":[
],
"displayName":"name",
"givenName":"pseudo",
"jobTitle":null,
"mail":"hamza@mail.co",
"mobilePhone":null,
"officeLocation":null,
"preferredLanguage":"fr-FR",
"surname":"Hadda",
"userPrincipalName":"hamza@mail.co"
}
这是我的界面
export interface UserInfos {
odataContext: string;
id: string;
businessPhonesNumbers: any[];
fullName: string;
givenName: string;
jobTitle: any;
mail: string;
mobilePhoneNumber: any;
office: any;
Language: string;
surname: string;
userPrincipalName: string;
}
我想知道在我的对象中拦截数据和位置的优化方法是什么。我应该创建一个类并在构造函数中传递 API 响应来构建我的数据,还是可以使用 TS 接口来做到这一点?
【问题讨论】:
-
接口只是describe的东西,它们在编译的JS中不存在,因此不能进行任何转换或转换。您必须自己编写该逻辑。采用原始有效负载的类构造函数是一种选择。
标签: javascript angular typescript class interface