声明接口而不是类型

时间:2019-10-16 17:28:48

标签: javascript typescript

export type MessageGroups = {
    [id: string]: MessageGroupModel
};

export interface MessageGroupModel {
    groupId: string;
    memberIds: string[];
    messages: ChatMessageModel[];
}

用法是这样的:

async handleFullMessageGroupUpdate(newMessageGroup: MessageGroupModel) {
    let messageGroups: MessageGroups = await this.storage.get(StorageKeys.MESSAGES);
    if (!messageGroups) {
      messageGroups = {}
    }
    if (!messageGroups[newMessageGroup.groupId]) {
      messageGroups[newMessageGroup.groupId] = newMessageGroup;
    } else {
      messageGroups[newMessageGroup.groupId].memberIds = newMessageGroup.memberIds;
      messageGroups[newMessageGroup.groupId].memberProfiles = newMessageGroup.memberProfiles;
      messageGroups = this.mergeNewGroupMessages(messageGroups,
        newMessageGroup.messages, newMessageGroup.groupId, newMessageGroup.lastMessageUpdateTime);
    }   
  }

export type MessageGroups声明对我来说还不清楚。我不能在这里使用interface而不是type吗?

0 个答案:

没有答案
相关问题