diff --git a/src/components/edittablehead/index.vue b/src/components/edittablehead/index.vue index f4cb16ae..e3f78146 100644 --- a/src/components/edittablehead/index.vue +++ b/src/components/edittablehead/index.vue @@ -148,10 +148,31 @@ const initTable = async () => { const _arr = JSON.parse(data); if (getObjType(_arr) !== 'array') return; - console.log('_arr :>> ', _arr); - columnRef.value = [..._arr]; - handleClearTableQuery(_arr); - emit('update:modelValue', _arr); + + // 设置的表格数据 + const _setArr = []; + + // 本地设置的表格数据 + const _oldArr = [...columnRef.value]; + + for (let j = 0; j < _arr.length; j++) { + const item = _arr[j]; + for (let i = 0; i < _oldArr.length; i++) { + const value = _oldArr[i]; + + if (item.prop !== value.prop) continue; + _setArr.push(item); + _oldArr.splice(i, 1); + break; + } + } + + _setArr.push(..._oldArr); + + console.log('_setArr :>> ', _setArr); + columnRef.value = _setArr; + handleClearTableQuery(_setArr); + emit('update:modelValue', _setArr); } catch (error) { console.log('error :>> ', error); }