diff --git a/apps/web-test/src/views/dashboard/home/components/Output5/index.vue b/apps/web-test/src/views/dashboard/home/components/Output5/index.vue index 219a2c49..318cf271 100644 --- a/apps/web-test/src/views/dashboard/home/components/Output5/index.vue +++ b/apps/web-test/src/views/dashboard/home/components/Output5/index.vue @@ -1,36 +1,65 @@ - + \ No newline at end of file + diff --git a/apps/web-test/src/views/dashboard/home/index.vue b/apps/web-test/src/views/dashboard/home/index.vue index 8056731b..92cd623f 100644 --- a/apps/web-test/src/views/dashboard/home/index.vue +++ b/apps/web-test/src/views/dashboard/home/index.vue @@ -18,6 +18,7 @@ import { UndoOutlined, } from '@ant-design/icons-vue'; import { + Button, Checkbox, CheckboxGroup, Collapse, @@ -44,11 +45,11 @@ const layout = ref([]); onMounted(() => { const layoutStr = JSON.parse(localStorage.getItem('layout')); if (layoutStr && layoutStr.length > 0) { - for (const element of layoutStr) { - if (element && element.component) { - // layoutStr[i].component = loadComponent(layoutStr[i].component); - } - } + // for (const element of layoutStr) { + // if (element && element.component) { + // layoutStr[i].component = loadComponent(layoutStr[i].component); + // } + // } layout.value = layoutStr; } console.log('oooo', layout.value); @@ -244,6 +245,7 @@ const dragend = (e) => { } catch {} } nextTick(() => { + // eslint-disable-next-line no-use-before-define tilesIsMove.value = true; }); }; @@ -290,9 +292,16 @@ const cancelOrSure = (type) => { if (type == 'cance') { editTiles.value = false; tilesStore.setTilesIsMove(false); - layout.value = layout.value.filter((item) => { - return !item.isNew; - }); + const layoutStr = JSON.parse(localStorage.getItem('layout')); + + if (layoutStr && layoutStr.length > 0) { + for (const element of layoutStr) { + if (element && element.component) { + element.loadComp = loadComponent(element.component); + } + } + layout.value = layoutStr; + } } else if (type == 'sure') { editTiles.value = false; tilesStore.setTilesIsMove(false); @@ -311,6 +320,43 @@ const goPage = (item) => { if (tilesIsMove.value) return; router.push(item?.path); }; +// 新增分组 +const addGroup = () => { + const arr = JSON.parse(JSON.stringify(layout.value)); + const maxY = arr.reduce((max, item) => { + return Math.max(max, item.y); + }, -Infinity); + const obj = { + name: '新建分组', + w: 4, + h: 6, + component: './components/Output5/index.vue', + dom: '.titlt-top', + isResize: true, + X: 0, + y: 0, + i: Math.random() * 100, + loadComp: loadComponent('./components/Output5/index.vue'), + childer: [ + { + name1: 'AUTO_1612159241967.png', + name2: 'AUTO_1612159241967_C车辆调度.png', + size: '2x2', + name: '车辆调度', + w: 1, + h: 2, + i: 0, + x: 1, + y: 1, + component: '../../components/Output1/index.vue', + }, + ], + }; + + layout.value.push(obj); + + console.log(layout.value, '00000'); +};