Skip to content

Commit 96667dd

Browse files
Add clone on control example
1 parent 5ed0019 commit 96667dd

12 files changed

+111
-13
lines changed
Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
<template>
2+
<div>
3+
<div class="row">
4+
<div class="col">
5+
<h3>Press Ctrl to clone element from list 1</h3>
6+
</div>
7+
</div>
8+
<div class="row">
9+
<div class="col-3">
10+
<h3>Draggable 1</h3>
11+
<draggable
12+
class="dragArea list-group"
13+
:list="list1"
14+
:clone="clone"
15+
:group="{ name: 'people', pull: pullFunction}"
16+
@start="start"
17+
>
18+
<div
19+
class="list-group-item"
20+
v-for="element in list1"
21+
:key="element.id"
22+
>
23+
{{ element.name }}
24+
</div>
25+
</draggable>
26+
</div>
27+
28+
<div class="col-3">
29+
<h3>Draggable 2</h3>
30+
<draggable
31+
class="dragArea list-group"
32+
:list="list2"
33+
group="people"
34+
>
35+
<div
36+
class="list-group-item"
37+
v-for="element in list2"
38+
:key="element.id"
39+
>
40+
{{ element.name }}
41+
</div>
42+
</draggable>
43+
</div>
44+
45+
<rawDisplayer
46+
class="col-3"
47+
:value="list1"
48+
title="List 1"
49+
/>
50+
51+
<rawDisplayer
52+
class="col-3"
53+
:value="list2"
54+
title="List 2"
55+
/>
56+
</div>
57+
</div>
58+
</template>
59+
60+
<script>
61+
import draggable from "@/vuedraggable";
62+
let idGlobal = 8;
63+
export default {
64+
name: "clone-on-control",
65+
display: "Clone on Control",
66+
order: 4,
67+
components: {
68+
draggable
69+
},
70+
data() {
71+
return {
72+
list1: [
73+
{ name: "Jesus", id: 1 },
74+
{ name: "Paul", id: 2 },
75+
{ name: "Peter", id: 3 }
76+
],
77+
list2: [
78+
{ name: "Luc", id: 5 },
79+
{ name: "Thomas", id: 6 },
80+
{ name: "John", id: 7 }
81+
],
82+
controlOnStart: true
83+
};
84+
},
85+
methods: {
86+
clone({ name }) {
87+
return { name, id: idGlobal++ };
88+
},
89+
pullFunction() {
90+
return this.controlOnStart ? "clone" : true;
91+
},
92+
start({ originalEvent }) {
93+
this.controlOnStart = originalEvent.ctrlKey;
94+
}
95+
}
96+
};
97+
</script>
98+
<style scoped></style>

example/components/footerslot.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ let id = 1;
4444
export default {
4545
name: "footerslot",
4646
display: "Footer slot",
47-
order: 11,
47+
order: 12,
4848
components: {
4949
draggable
5050
},

example/components/handle.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ import draggable from "@/vuedraggable";
3434
export default {
3535
name: "handle",
3636
display: "Handle",
37-
order: 4,
37+
order: 5,
3838
components: {
3939
draggable
4040
},

example/components/headerslot.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ let id = 1;
4040
export default {
4141
name: "headerslot",
4242
display: "Header slot",
43-
order: 12,
43+
order: 13,
4444
components: {
4545
draggable
4646
},

example/components/nested-example.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import nestedDraggable from "./infra/nested";
1414
export default {
1515
name: "nested-example",
1616
display: "Nested",
17-
order: 14,
17+
order: 15,
1818
components: {
1919
nestedDraggable
2020
},

example/components/table-column-example..vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ import draggable from "@/vuedraggable";
3030
export default {
3131
name: "table-column-example",
3232
display: "Table Column",
33-
order: 8,
33+
order: 9,
3434
components: {
3535
draggable
3636
},

example/components/table-example.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ import draggable from "@/vuedraggable";
3030
export default {
3131
name: "table-example",
3232
display: "Table",
33-
order: 7,
33+
order: 8,
3434
components: {
3535
draggable
3636
},

example/components/third-party.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ import draggable from "@/vuedraggable";
3737
export default {
3838
name: "third-party",
3939
display: "Third party",
40-
order: 9,
40+
order: 10,
4141
components: {
4242
draggable
4343
},

example/components/transition-example-2.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ const message = [
5656
export default {
5757
name: "transition-example-2",
5858
display: "Transitions",
59-
order: 6,
59+
order: 7,
6060
components: {
6161
draggable
6262
},

example/components/transition-example.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ const message = [
5555
export default {
5656
name: "transition-example",
5757
display: "Transition",
58-
order: 5,
58+
order: 6,
5959
components: {
6060
draggable
6161
},

0 commit comments

Comments
 (0)