Skip to content

Commit f084c8c

Browse files
committed
Improve key assignment logic
1 parent 9010691 commit f084c8c

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

react-todos/src/App.js

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,19 @@ function App() {
1212
const [todos, setTodos] = useState(seededTodos);
1313

1414
const addTodo = (description, assigned) => {
15-
if (seededTodos.length > 0) {
16-
const newTodo = {
17-
rowNumber: todos.length + 1,
18-
rowDescription: description,
19-
rowAssigned: assigned,
20-
};
21-
setTodos((todos) => [...todos, newTodo]);
15+
let rowNumber = 0;
16+
17+
if (todos.length > 0) {
18+
rowNumber = todos[todos.length - 1].rowNumber + 1;
19+
} else {
20+
rowNumber = 1;
2221
}
22+
const newTodo = {
23+
rowNumber: rowNumber,
24+
rowDescription: description,
25+
rowAssigned: assigned,
26+
};
27+
setTodos((todos) => [...todos, newTodo]);
2328
};
2429

2530
return (

0 commit comments

Comments
 (0)