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
吗?