Skip to content

Commit d23cbe2

Browse files
author
Wayne Van Son
committed
added nested with v-model and vuex example
1 parent b721a00 commit d23cbe2

14 files changed

+377
-10258
lines changed

dist/vuedraggable.common.js

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/vuedraggable.common.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/vuedraggable.umd.js

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/vuedraggable.umd.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/vuedraggable.umd.min.js.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/app.js

Lines changed: 315 additions & 125 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
File renamed without changes.

example/components/nested-with-vmodel.vue

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<template>
2-
<div class="row">
3-
<nested-test class="col-8" v-model="elements"/>
4-
<raw-displayer class="col-4" :title="'Vuex Store'" :value="elements"/>
2+
<div class="justify-content-between row">
3+
<nested-test class="col-8" v-model="elements" />
4+
<raw-displayer class="col-4" :title="'Vuex Store'" :value="elements" />
55
</div>
66
</template>
77

@@ -11,7 +11,7 @@ import rawDisplayer from "./infra/raw-displayer.vue";
1111
1212
export default {
1313
name: "nested-with-vmodel",
14-
display: "Nested with v-model & Vuex",
14+
display: "Nested (v-model & vuex)",
1515
order: 16,
1616
components: {
1717
NestedTest,
@@ -20,11 +20,10 @@ export default {
2020
computed: {
2121
elements: {
2222
get() {
23-
return this.$store.state.nestedA.elements;
23+
return this.$store.state.nested.elements;
2424
},
2525
set(value) {
26-
console.log(value);
27-
this.$store.dispatch("nestedA/updateElements", value);
26+
this.$store.dispatch("nested/updateElements", value);
2827
}
2928
}
3029
},

example/components/nested/nested1.js renamed to example/components/nested/nested-store.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import Vue from "vue";
33

44
Vue.use(Vuex);
55

6-
export const nestedA = {
6+
export const nested = {
77
namespaced: true,
88
state: {
99
elements: [
@@ -18,12 +18,12 @@ export const nestedA = {
1818
elements: [
1919
{
2020
id: 4,
21-
name: "King",
21+
name: "Lord Farquad",
2222
elements: []
2323
},
2424
{
2525
id: 5,
26-
name: "Queen",
26+
name: "Prince Charming",
2727
elements: []
2828
}
2929
]
@@ -45,4 +45,4 @@ export const nestedA = {
4545
commit("updateElements", payload);
4646
}
4747
}
48-
}
48+
};

example/components/nested/nested-test.vue

Lines changed: 24 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,31 @@
11
<style scoped>
22
.item-container {
3-
border: solid black 1px;
4-
min-height: 2rem;
3+
max-width: 20rem;
4+
margin: 0;
55
}
66
77
.item {
88
padding: 1rem;
9-
9+
border: solid black 1px;
10+
background-color: #fefefe;
1011
}
1112
.item-sub {
12-
padding:1rem;
13-
margin: 0 0 0 1rem
13+
margin: 0 0 0 1rem;
1414
}
1515
</style>
1616

17-
1817
<template>
19-
<draggable v-bind="dragOptions" class="item-container" :list="list" :value="value" @input="emitter">
20-
<div class="item-group" :key="el.id" v-for="(el, i) in realValue">
18+
<draggable
19+
v-bind="dragOptions"
20+
tag="div"
21+
class="item-container"
22+
:list="list"
23+
:value="value"
24+
@input="emitter"
25+
>
26+
<div class="item-group" :key="el.id" v-for="el in realValue">
2127
<div class="item">{{ el.name }}</div>
22-
<nested-test class="item-sub" :list="el.elements"/>
28+
<nested-test class="item-sub" :list="el.elements" />
2329
</div>
2430
</draggable>
2531
</template>
@@ -38,11 +44,17 @@ export default {
3844
},
3945
computed: {
4046
dragOptions() {
41-
return {transition: 200,}
47+
return {
48+
animation: 0,
49+
group: "description",
50+
disabled: false,
51+
ghostClass: "ghost"
52+
};
4253
},
54+
// this.value when input = v-model
55+
// this.list when input != v-model
4356
realValue() {
44-
const test = this.value ? this.value : this.list;
45-
return test;
57+
return this.value ? this.value : this.list;
4658
}
4759
},
4860
props: {

0 commit comments

Comments
 (0)