mirror of
https://github.com/dataease/dataease.git
synced 2025-02-25 03:52:59 +08:00
fix(仪表板): 资源树拖动移动资源后,不刷新页面重新选择其他排序方式,资源的移动显示不正确,刷新是正常的
This commit is contained in:
parent
3d8efba335
commit
0d068b1b79
@ -1,6 +1,6 @@
|
||||
import { cloneDeep } from 'lodash-es'
|
||||
|
||||
const treeDraggble = (state, key, req, type) => {
|
||||
const treeDraggble = (state, key, req, type, originResourceTree) => {
|
||||
let dragNodeParentId = ''
|
||||
let dragNodeId = ''
|
||||
let dragNodeIndex = 0
|
||||
@ -106,14 +106,18 @@ const treeDraggble = (state, key, req, type) => {
|
||||
dfsTreeNodeBack(state[key], '0', params)
|
||||
}
|
||||
|
||||
req(params).catch(() => {
|
||||
if (dragNodeParentId === '0') {
|
||||
state[key].splice(dragNodeIndex, 0, draggingNode.data)
|
||||
return
|
||||
}
|
||||
req(params)
|
||||
.then(() => {
|
||||
originResourceTree.value = cloneDeep(state[key])
|
||||
})
|
||||
.catch(() => {
|
||||
if (dragNodeParentId === '0') {
|
||||
state[key].splice(dragNodeIndex, 0, draggingNode.data)
|
||||
return
|
||||
}
|
||||
|
||||
dfsTreeNodeReset(state[key], draggingNode.data)
|
||||
})
|
||||
dfsTreeNodeReset(state[key], draggingNode.data)
|
||||
})
|
||||
}
|
||||
|
||||
return {
|
||||
|
@ -114,14 +114,18 @@ const treeDraggbleChart = (state, key, type) => {
|
||||
dfsTreeNodeBack(state[key], '0', params)
|
||||
}
|
||||
|
||||
moveResource(params).catch(() => {
|
||||
if (dragNodeParentId === '0') {
|
||||
state[key].splice(dragNodeIndex, 0, draggingNode.data)
|
||||
return
|
||||
}
|
||||
moveResource(params)
|
||||
.then(() => {
|
||||
state.originResourceTree = cloneDeep(state[key])
|
||||
})
|
||||
.catch(() => {
|
||||
if (dragNodeParentId === '0') {
|
||||
state[key].splice(dragNodeIndex, 0, draggingNode.data)
|
||||
return
|
||||
}
|
||||
|
||||
dfsTreeNodeReset(state[key], draggingNode.data)
|
||||
})
|
||||
dfsTreeNodeReset(state[key], draggingNode.data)
|
||||
})
|
||||
}
|
||||
|
||||
return {
|
||||
|
@ -152,10 +152,10 @@ const resourceOptFinish = param => {
|
||||
}
|
||||
}
|
||||
|
||||
let originResourceTree = []
|
||||
const originResourceTree = shallowRef([])
|
||||
|
||||
const sortTypeChange = sortType => {
|
||||
state.datasetTree = treeSort(originResourceTree, sortType)
|
||||
state.datasetTree = treeSort(originResourceTree.value, sortType)
|
||||
state.curSortType = sortType
|
||||
wsCache.set('TreeSort-dataset', state.curSortType)
|
||||
}
|
||||
@ -253,7 +253,8 @@ const { handleDrop, allowDrop, handleDragStart } = treeDraggble(
|
||||
state,
|
||||
'datasetTree',
|
||||
moveDatasetTree,
|
||||
'dataset'
|
||||
'dataset',
|
||||
originResourceTree
|
||||
)
|
||||
|
||||
const generateColumns = (arr: Field[]) =>
|
||||
@ -293,12 +294,12 @@ const getData = () => {
|
||||
if (nodeData.length && nodeData[0]['id'] === '0' && nodeData[0]['name'] === 'root') {
|
||||
rootManage.value = nodeData[0]['weight'] >= 7
|
||||
state.datasetTree = nodeData[0]['children'] || []
|
||||
originResourceTree = cloneDeep(unref(state.datasetTree))
|
||||
originResourceTree.value = cloneDeep(unref(state.datasetTree))
|
||||
sortTypeChange(curSortType)
|
||||
return
|
||||
}
|
||||
state.datasetTree = nodeData
|
||||
originResourceTree = cloneDeep(unref(state.datasetTree))
|
||||
originResourceTree.value = cloneDeep(unref(state.datasetTree))
|
||||
sortTypeChange(curSortType)
|
||||
})
|
||||
.finally(() => {
|
||||
|
@ -210,10 +210,10 @@ const selectDataset = row => {
|
||||
})
|
||||
}
|
||||
|
||||
let originResourceTree = []
|
||||
const originResourceTree = shallowRef([])
|
||||
|
||||
const sortTypeChange = sortType => {
|
||||
state.datasourceTree = treeSort(originResourceTree, sortType)
|
||||
state.datasourceTree = treeSort(originResourceTree.value, sortType)
|
||||
state.curSortType = sortType
|
||||
wsCache.set('TreeSort-datasource', state.curSortType)
|
||||
}
|
||||
@ -481,11 +481,11 @@ const listDs = () => {
|
||||
if (nodeData.length && nodeData[0]['id'] === '0' && nodeData[0]['name'] === 'root') {
|
||||
rootManage.value = nodeData[0]['weight'] >= 7
|
||||
state.datasourceTree = nodeData[0]['children'] || []
|
||||
originResourceTree = cloneDeep(unref(state.datasourceTree))
|
||||
originResourceTree.value = cloneDeep(unref(state.datasourceTree))
|
||||
sortTypeChange(curSortType)
|
||||
return
|
||||
}
|
||||
originResourceTree = cloneDeep(unref(state.datasourceTree))
|
||||
originResourceTree.value = cloneDeep(unref(state.datasourceTree))
|
||||
state.datasourceTree = nodeData
|
||||
sortTypeChange(curSortType)
|
||||
})
|
||||
@ -754,7 +754,8 @@ const { handleDrop, allowDrop, handleDragStart } = treeDraggble(
|
||||
state,
|
||||
'datasourceTree',
|
||||
move,
|
||||
'datasource'
|
||||
'datasource',
|
||||
originResourceTree
|
||||
)
|
||||
|
||||
const handleCopy = async data => {
|
||||
|
Loading…
Reference in New Issue
Block a user