export default class SliceMsgToLastMsg { constructor(arg) { this.$ = arg } // 所有待插入的消息数据 msgs = '' // 是否正在分割消息数据 sliceMsgIng = false addMsg(msg) { // console.log('msg', msg); this.msgs += msg if (this.sliceMsgIng === false) { this.sliceMsg() } } sliceMsg() { this.sliceMsgIng = true let msg = this.msgs.slice(0, 1) // console.log('msg', msg); // 更新最后一条消息的内容 // console.log('this.$', this.$); this.$.updateLastMsg(lastMsg => { lastMsg.content += msg }) this.msgs = this.msgs.slice(1) if (this.msgs.length) { setTimeout(() => { this.sliceMsg(this.msgs) }, 30); } else { this.sliceMsgIng = false } } }