Постоянно получаю ошибку типа в моем приложении todo. Я пытаюсь установить для свойства isComplete значение true.
Ошибка: TypeError: Cannot set property 'isCompleted' of undefined
My complete_todo. js Файл:
import { TodoContext } from './todo_ctx';
const MarkComplete = (index) => {
const [tasks, setTodos] = useContext(TodoContext);
const newTask = [...tasks];
newTask[index].isCompleted = true;
setTodos(newTask);
return (
<button onClick={MarkComplete}>Mark Complete</button>
);
}
export default MarkComplete;
My todo_ctx. js file:
import React, { useState, createContext} from 'react';
export const TodoContext = createContext();
export const TodoProvider = (props) => {
const [tasks, setTodos] = useState([
{
id: 1,
task: 'Learn React',
description: 'Build a todo app in React',
isCompleted: false
},
{
id: 2,
task: 'Learn Node',
description: 'Build a Node API',
isCompleted: false
},
{
id: 3,
task: 'Learn Flutter',
description: 'Complete Flutter Course',
isCompleted: false
}
]);
return (
<TodoContext.Provider value={[tasks, setTodos]}>
{props.children}
</TodoContext.Provider>
)
}
Я новичок в React, мне здесь чего-то не хватает ??