我正在使用Angular 5。
我有“假后端”(项目数组)。
我的情况:
我正在等待对象的以下结构:

id: number,
title: string

但是,后端向我发送了错误的结构:
id: number,
name: string.

我需要从后端接收数据,并且如果字段名称(在我的情况下,“名称”错误,应为“标题”)错误,那么我应该重命名字段并返回有效的对象。

附言我有接口(interface)和类(class)

最佳答案

在大型应用程序中,您对后端没有太多控制,好的做法是为您期望的每种响应类型创建一个映射器。

例如,您发出http请求以从后端检索汽车列表。
检索响应时,会将数据传递给特定的映射函数。

class CarMapper {

    // map API to APP
    public serverModelToClientModel(apiModel: CarApiModel): CarAppModel {
        const appModel = new CarAppModel(); // your Car constructor
        // map each property
        appModel.id = apiModel.id_server;
        appModel.name = apiModel.title;
        return appModel; // and return YOUR model
    }

}

这样,在客户端,您始终拥有正确的数据模型。您可以适应在后端进行的任何模型更改。

09-19 10:05