定义
场景
有来自多个不同数据字段的接口的数据,为了统一接收这些数据就需要一个适配器
// 本地资源文件上传之后的数据结构
export interface ResourceLocalFileType {
uuid: string;
name: string;
size: number;
created: number;
lastModified: number;
resourceType: number;
cancel: () => void;
status: string;
}
// 资源概况接口返回的数据结构
export interface ResourcePackageFileType {
uuid: string;
materialName: string;
materialLink: string;
materialType: number;
uid?: string;
ext?: string;
}
// 原先数据后台返回的数据接口
export interface ResourceBackendFileType {
uuid: string;
resourceName: string;
resourceLink: string;
resourceType: number;
version: string;
ext: string;
}
采用适配器模式,将不同的数据结构适配成展示组件所能接受的数据结构
export interface AdapterResourceType {
uuid: string;
created: number;
fileNo: number;
fileName: string;
fileOrigin: string;
fileStatus: string;
fileInfo: {
type: number;
size?: number;
[key: string]: any;
};
// 本地图片额外操作
action?: {
cancel?: () => void;
[key: string]: any;
};
}
在数据进行组件列表展示时,将来源不同的数据经过适配器处理,进行整合,然后传递给展示组件,以达到我们的目的