回答編集履歴

3

コード追記

2021/07/31 18:02

投稿

gah2s
gah2s

スコア9

test CHANGED
@@ -45,3 +45,77 @@
45
45
  よく見ると、削除の確認をするまえに、`currentNote.remove()` が実行されてしまっています。
46
46
 
47
47
  なので、削除しない判断をした場合でも、削除ボタンをクリックした時点で当該ノードが消えてしまいます。
48
+
49
+
50
+
51
+
52
+
53
+ 変更したコード
54
+
55
+ ```javascript
56
+
57
+ // Event: Note Buttons
58
+
59
+ noteContainer.addEventListener('click', (e) => {
60
+
61
+ if (e.target.classList.contains('note__view')) {
62
+
63
+ const currentNote = e.target.closest('.note');
64
+
65
+ const currentTitle = currentNote.querySelector('.note__title').textContent;
66
+
67
+ const currentBody = currentNote.querySelector('.note__body').textContent;
68
+
69
+ activateNoteModal(currentTitle, currentBody);
70
+
71
+ }
72
+
73
+ if (e.target.classList.contains('note__delete')) {
74
+
75
+ const currentNote = e.target.closest('.note');
76
+
77
+ const id = currentNote.querySelector('span').textContent;
78
+
79
+ removeNote(currentNote, Number(id))
80
+
81
+ }
82
+
83
+ })
84
+
85
+
86
+
87
+ // Function: remove a note from local storage
88
+
89
+ function removeNote(currentNote, id) {
90
+
91
+ if (window.confirm('削除しますか?') == true) {
92
+
93
+ const notes = getNotes();
94
+
95
+ notes.forEach((note, index) => {
96
+
97
+ if (note.id === id) {
98
+
99
+ notes.splice(index, 1);
100
+
101
+ }
102
+
103
+ localStorage.setItem('noteApp.notes', JSON.stringify(notes));
104
+
105
+ });
106
+
107
+ showAlertMessage('Your note was permanently deleted', 'remove-message');
108
+
109
+ currentNote.remove();
110
+
111
+ } else {
112
+
113
+ window.alert('操作がキャンセルされました。')
114
+
115
+ }
116
+
117
+ }
118
+
119
+ ```
120
+
121
+ removeNote に 新しく currentNote 引数を追加して、削除する選択の場合は、`currentNote.remove()` が動きます。

2

解釈変更

2021/07/31 18:02

投稿

gah2s
gah2s

スコア9

test CHANGED
File without changes

1

解釈変更

2021/07/31 16:58

投稿

gah2s
gah2s

スコア9

test CHANGED
@@ -44,4 +44,4 @@
44
44
 
45
45
  よく見ると、削除の確認をするまえに、`currentNote.remove()` が実行されてしまっています。
46
46
 
47
- なので、削除しない判断をした場合でも、当該ノードが消えてしまいます。
47
+ なので、削除しない判断をした場合でも、削除ボタンをクリックした時点で当該ノードが消えてしまいます。