Skip to content

Commit 78890e7

Browse files
committed
Implemented Update Todo Item
1 parent f4b1e70 commit 78890e7

File tree

2 files changed

+31
-3
lines changed

2 files changed

+31
-3
lines changed

src/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<html lang="en">
33
<head>
44
<meta charset="utf-8">
5-
<title>todo-jexia</title>
5+
<title>todo-jexia-react</title>
66
</head>
77
<body>
88
<div id="app">

src/js/TODO.js

Lines changed: 30 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,19 @@ const TODO = (props) => {
55

66
const [todos, setTodos] = useState(props.todos);
77

8-
const updateTODO = (event, index) => {
8+
async function updateTODO(event, index) {
99
let newTODO = (event.target.value);
1010
let newTODOs = [...todos];
11+
/*if (newTODO.trim().length > 0
12+
&& newTODOs[index].id.trim().length > 0) {
13+
await update('todos', {
14+
'key': 'id',
15+
'value': newTODOs[index].id,
16+
'toUpdate': {
17+
'item': newTODO
18+
}
19+
});
20+
}*/
1121
newTODOs[index].item = newTODO;
1222
setTodos(newTODOs);
1323
};
@@ -46,7 +56,25 @@ const TODO = (props) => {
4656
'item': ret[0].item,
4757
'done': false
4858
});
49-
}
59+
} else {
60+
if (newTODOs[index].item.trim().length !== 0) {
61+
let ret = [];
62+
ret = await update('todos', {
63+
'key': 'id',
64+
'value': newTODOs[index].id,
65+
'toUpdate': {
66+
'item': newTODOs[index].item
67+
}
68+
});
69+
70+
newTODOs.splice(index, 1);
71+
newTODOs.splice(index, 0, {
72+
'id': ret[0].id,
73+
'item': ret[0].item,
74+
'done': ret[0].done
75+
});
76+
}
77+
}
5078
newTODOs.splice(index + 1, 0, {
5179
'id': "",
5280
'item': "",

0 commit comments

Comments
 (0)