Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit c6324c4

Browse files
add new note to state
1 parent 9beb162 commit c6324c4

File tree

4 files changed

+20
-10
lines changed

4 files changed

+20
-10
lines changed

‎src/components/List.vue

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<template>
22
<div class="row">
33
<div class="col-12 mx-auto">
4+
<TextInput v-on:add-note="addNote"/>
45
<b-list-group v-bind:key="item.id" v-for="item in items">
56
<ListItem v-bind:data="item" v-on:del-todo="deleteItem"></ListItem>
67
</b-list-group>
@@ -11,6 +12,7 @@
1112
<script>
1213
import axios from "axios";
1314
15+
import TextInput from '@/components/TextInput.vue';
1416
import ListItem from "@/components/ListItem.vue";
1517
1618
export default {
@@ -21,6 +23,7 @@ export default {
2123
};
2224
},
2325
components: {
26+
TextInput,
2427
ListItem
2528
},
2629
created() {
@@ -32,6 +35,9 @@ export default {
3235
methods: {
3336
deleteItem(id) {
3437
this.items = this.items.filter(todo => todo.id !== id)
38+
},
39+
addNote(newNote) {
40+
this.items = [newNote, ...this.items];
3541
}
3642
}
3743

‎src/components/ListItem.vue

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
<template>
2-
<b-list-group-item button >
3-
<TextInput v-if="onEditMode" v-bind:text="data.title"></TextInput>
2+
<b-list-group-item button class="mb-2">
3+
4+
<TextInput v-if="onEditMode" v-model="text" v-bind:text="data.title"></TextInput>
5+
46
<p>{{data.title}}</p>
57
<editButton v-on:edit-todo="setEditMode"></editButton>
68
<deleteButton v-on:del-todo="$emit('del-todo', data.id)"></deleteButton>
@@ -20,7 +22,8 @@ export default {
2022
props: {
2123
data: {
2224
id: String,
23-
title: String
25+
title: String,
26+
complete: Boolean
2427
}
2528
},
2629
components: {
@@ -30,12 +33,14 @@ export default {
3033
},
3134
data() {
3235
return {
33-
onEditMode: false
36+
onEditMode: false,
37+
text: ''
3438
}
3539
},
36-
methods: {
40+
methods: {
3741
setEditMode() {
3842
this.onEditMode = !this.onEditMode;
43+
3944
}
4045
}
4146
};

‎src/components/TextInput.vue

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<template>
2-
<div>
2+
<divclass="mb-2">
33
<b-form v-on:submit.prevent="addNote">
44
<b-form-input
55
type="text"
@@ -23,12 +23,14 @@ export default {
2323
addNote() {
2424
const newNote = {
2525
id: uuidv4(),
26-
text: this.text,
26+
title: this.text,
2727
complete: false
2828
};
2929
3030
// send up to parent
3131
this.$emit("add-note", newNote);
32+
33+
this.text = '';
3234
}
3335
}
3436
};

‎src/views/Home.vue

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
11
<template>
22
<div class="col-12">
33
<h3 class="m-2">{{title}}</h3>
4-
<TextInput/>
54
<List />
65
</div>
76
</template>
87

98
<script>
10-
import TextInput from '@/components/TextInput.vue';
119
import List from "@/components/List";
1210
1311
export default {
@@ -18,7 +16,6 @@ export default {
1816
}
1917
},
2018
components: {
21-
TextInput,
2219
List
2320
}
2421
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /