Javascript 如何在AngularJS中处理模型/API响应转换?
我有一个angular应用程序,它从JSON API请求数据。API响应示例可能是:Javascript 如何在AngularJS中处理模型/API响应转换?,javascript,angularjs,json,rest,Javascript,Angularjs,Json,Rest,我有一个angular应用程序,它从JSON API请求数据。API响应示例可能是: { id: 1, name: 'JJ', houseId: 2 } 在我的angular应用程序中,我将使用表示用户的模型,该模型还具有对房屋对象的引用: { id: 1, firstName: 'JJ', surname: '', house: { id: 2, address: 'XXX' } } 应用程序模型和API响应的不同之处在于,API响应中的名称
{
id: 1,
name: 'JJ',
houseId: 2
}
在我的angular应用程序中,我将使用表示用户的模型,该模型还具有对房屋对象的引用:
{
id: 1,
firstName: 'JJ',
surname: '',
house: {
id: 2,
address: 'XXX'
}
}
应用程序模型和API响应的不同之处在于,API响应中的名称有一个字段,而我的应用程序模型中有两个字段。是否有一种“角度”的方式可以将API调用响应对象转换为我的应用程序模型,以确保我始终处理控制器/服务中的一致性对象
与此相关,API使用与该用户关联的house对象的数据库id响应,而不是JSON中包含的full house对象。有没有办法设置我的对象,以便在需要时自动解决此问题
例如,我想显示这个用户及其地址。如果对象完全解析,我可以使用“user.house.address”。但是,使用普通JSON响应对象,这将是未定义的。我不必通过使用houseapi和houseId来显式解析house对象,而是希望在“幕后”实现这一点,之前说明如果访问对象,将如何解析此类id
或者我的做法是错误的,应该使用API响应来指示我的应用程序的数据结构,通过对象id进行显式查找是首选方法?在rest端点和其他控制器/服务之间创建额外的服务层如何?其职责是执行所有必要的rest调用,以构建完整的用户对象并执行必要的转换。在rest端点和其他控制器/服务之间创建额外的服务层如何?其职责是执行所有必要的rest调用,以构建完整的用户对象并执行必要的转换。