Skip to content

Commit 411eba0

Browse files
committed
左侧候选区代码结构优化
1 parent a8c979d commit 411eba0

File tree

1 file changed

+38
-61
lines changed

1 file changed

+38
-61
lines changed

src/views/index/Home.vue

Lines changed: 38 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -11,70 +11,33 @@
1111
</div>
1212
<el-scrollbar class="left-scrollbar">
1313
<div class="components-list">
14-
<div class="components-title">
15-
<svg-icon icon-class="component" />输入型组件
16-
</div>
17-
<draggable
18-
class="components-draggable"
19-
:list="inputComponents"
20-
:group="{ name: 'componentsGroup', pull: 'clone', put: false }"
21-
:clone="cloneComponent"
22-
draggable=".components-item"
23-
:sort="false"
24-
@end="onEnd"
25-
>
26-
<div
27-
v-for="(element, index) in inputComponents" :key="index" class="components-item"
28-
@click="addComponent(element)"
29-
>
30-
<div class="components-body">
31-
<svg-icon :icon-class="element.tagIcon" />
32-
{{ element.label }}
33-
</div>
14+
<div v-for="(item, listIndex) in leftComponents" :key="listIndex">
15+
<div class="components-title">
16+
<svg-icon icon-class="component" />
17+
{{ item.title }}
3418
</div>
35-
</draggable>
36-
<div class="components-title">
37-
<svg-icon icon-class="component" />选择型组件
38-
</div>
39-
<draggable
40-
class="components-draggable"
41-
:list="selectComponents"
42-
:group="{ name: 'componentsGroup', pull: 'clone', put: false }"
43-
:clone="cloneComponent"
44-
draggable=".components-item"
45-
:sort="false"
46-
@end="onEnd"
47-
>
48-
<div
49-
v-for="(element, index) in selectComponents"
50-
:key="index"
51-
class="components-item"
52-
@click="addComponent(element)"
19+
<draggable
20+
class="components-draggable"
21+
:list="item.list"
22+
:group="{ name: 'componentsGroup', pull: 'clone', put: false }"
23+
:clone="cloneComponent"
24+
draggable=".components-item"
25+
:sort="false"
26+
@end="onEnd"
5327
>
54-
<div class="components-body">
55-
<svg-icon :icon-class="element.tagIcon" />
56-
{{ element.label }}
28+
<div
29+
v-for="(element, index) in item.list"
30+
:key="index"
31+
class="components-item"
32+
@click="addComponent(element)"
33+
>
34+
<div class="components-body">
35+
<svg-icon :icon-class="element.tagIcon" />
36+
{{ element.label }}
37+
</div>
5738
</div>
58-
</div>
59-
</draggable>
60-
<div class="components-title">
61-
<svg-icon icon-class="component" /> 布局型组件
39+
</draggable>
6240
</div>
63-
<draggable
64-
class="components-draggable" :list="layoutComponents"
65-
:group="{ name: 'componentsGroup', pull: 'clone', put: false }" :clone="cloneComponent"
66-
draggable=".components-item" :sort="false" @end="onEnd"
67-
>
68-
<div
69-
v-for="(element, index) in layoutComponents" :key="index" class="components-item"
70-
@click="addComponent(element)"
71-
>
72-
<div class="components-body">
73-
<svg-icon :icon-class="element.tagIcon" />
74-
{{ element.label }}
75-
</div>
76-
</div>
77-
</draggable>
7841
</div>
7942
</el-scrollbar>
8043
</div>
@@ -210,7 +173,21 @@ export default {
210173
showFileName: false,
211174
activeData: drawingDefalut[0],
212175
saveDrawingListDebounce: debounce(340, saveDrawingList),
213-
saveIdGlobalDebounce: debounce(340, saveIdGlobal)
176+
saveIdGlobalDebounce: debounce(340, saveIdGlobal),
177+
leftComponents: [
178+
{
179+
title: '输入型组件',
180+
list: inputComponents
181+
},
182+
{
183+
title: '选择型组件',
184+
list: selectComponents
185+
},
186+
{
187+
title: '布局型组件',
188+
list: layoutComponents
189+
}
190+
]
214191
}
215192
},
216193
computed: {

0 commit comments

Comments
 (0)