perf: 加载更多消息safari兼容性

This commit is contained in:
kuaifan 2023-03-04 10:56:18 +08:00
parent b5059c13a3
commit 20e236d429
3 changed files with 12 additions and 5 deletions

View File

@ -1520,7 +1520,8 @@ export default {
msg_id: this.msgId,
msg_type: this.msgType,
prev_id: this.prevId,
save_before: _ => this.scrollDisabled = true
save_before: _ => this.scrollDisabled = true,
save_after: _ => this.scrollDisabled = false
}).then(({data}) => {
const ids = data.list.map(item => item.id)
this.$nextTick(() => {
@ -1534,7 +1535,7 @@ export default {
offset -= 36
}
this.onToOffset(offset)
this.scrollDisabled = false
setTimeout(_ => scroller.virtual.handleFront(), 10)
});
}).catch(() => {})
},

View File

@ -2524,18 +2524,23 @@ export default {
* @param state
* @param dispatch
* @param getters
* @param data {dialog_id, msg_id, ?msg_type, ?position_id, ?prev_id, ?next_id, ?save_before, ?clear_before, ?spinner}
* @param data {dialog_id, msg_id, ?msg_type, ?position_id, ?prev_id, ?next_id, ?save_before, ?save_after, ?clear_before, ?spinner}
* @returns {Promise<unknown>}
*/
getDialogMsgs({state, dispatch, getters}, data) {
return new Promise((resolve, reject) => {
let saveBefore = _ => {}
let saveAfter = _ => {}
let clearBefore = false
let spinner = false
if (typeof data.save_before !== "undefined") {
saveBefore = typeof data.save_before === "function" ? data.save_before : _ => {}
delete data.save_before
}
if (typeof data.save_after !== "undefined") {
saveAfter = typeof data.save_after === "function" ? data.save_after : _ => {}
delete data.save_after
}
if (typeof data.clear_before !== "undefined") {
clearBefore = typeof data.clear_before === "boolean" ? data.clear_before : false
delete data.clear_before
@ -2582,6 +2587,7 @@ export default {
//
dispatch("saveDialogMsg", resData.list)
resolve(result)
saveAfter()
}).catch(e => {
console.warn(e);
reject(e)

View File

@ -1469,8 +1469,8 @@
}
.dialog-wrapper-loading {
width: 10px;
height: 10px;
width: 8px;
height: 8px;
border-radius: 50%;
display: block;
margin: 0 auto;