#javascript #html #css
#javascript #HTML #css — код
Вопрос:
Я добавляю новую задачу, используя следующий код JavaScript:
function addTask(name, important){
alert(important);
const newTask = {id: "todo" nanoid(), name:name, completed:false, important:important, checked:false};
setTasks([...tasks, newTask]);
console.log(setTasks)
}
Теперь я хотел бы добавить последнюю задачу на первое место приложения. Могу я спросить, пожалуйста, как сделать это возможным?
Комментарии:
1. Попробуйте
setTasks([newTask, ...tasks]);
2. используйте
unshift()
3. @JonesJoseph, не могли бы вы уточнить?
4.
tasks.unshift(newTask)
— метод добавляет данный элемент в начало массива. developer.mozilla.org/en-US/docs/Web/JavaScript/Reference /…5. @RameshReddy, ваш ответ мне помог.
Ответ №1:
setTasks([newTask, ...tasks]);
Это самый чистый способ добавления элементов впереди, однако позже он может оказаться непоследовательным (например, после сохранения в БД и извлечения списка из БД), лично я бы использовал метод array.sort() и отсортировал массив по дате создания или / и по «важному» ключу. Таким образом, независимо от того, как вы помещаете элемент в массив, они всегда будут в правильном / необходимом порядке.