здорово, наиболее приближенно к тому, что я ищу. Как понимаю, здесь представленна простая реализация. Получается, что наши компоненты "умные", следят за информацией... И, как понимаю, в дальнейшем, можно сделать их глупыми, реализовав Flux подход.
спасибо за изи вариант тудулиста и отдельное спасибо за библиотеку uuid - она тупо топ. кто не понял как работает uuid то там все просто: import { v1 as uuidv1 } from 'uuid'; id: uuidv1()
Около 30:00 он скачивает uuid что бы поставить уникальный id но это глупо так как есть функция Date.now() которая просто указывает id не похожий на другие и не приходится устанавливать uuid тем самым нагружать проект
в этом вообще 0 глупости. безусловно, собирать id он мог разными способами. Начиная от Date.now() и вплоть до генерации рандомных чисел. Но зачем делать костыль, если можно воспользоваться методом, который прямо таки и создавался для подобных вещей?
По поводу уникального ID - можно его сгенерировать(зарандомить) таким образом - Math.random().toString(36).substring(2, 9). А так - видеоурок огонь, максимально разжевано!
44:53 после окончания функций saveTodo у меня выводит ошибка "todo is not iterable". Вообще без понятия как это ошибку исправить в интернете я не нашел. Help
2 часть. Фильтр задач
ruclips.net/video/3BYQ6WmKLeU/видео.html
Не слушайте тех, кто критикует или пишет зачем. Ваши уроки по написанию ToDo мне понравились, очень полезно. Пишите другие проекты.
Отличный пример того, как должно строиться и реализовываться обучающее видео! Очень помог немного лучше понять тему реакта!
Я столько видео смотрела по туду, все не понятны, а тут все ясно по полочкам, спасибо автор за подробный урок!
Огромное спасибо, всё описано просто идеально 🙌 С радостью посмотрел бы новые выпуски на разные темы реакта!)
Очень хорошое обьяснение!!!! Спасибо автору.
когда мы создавали функцию для удаляемых значений,в newTodo не нужен спред оператор на todo, так как filter и так создает новый массив
вы правы, спасибо за замечание
Спасибо, все понятно и доступно!
Спасибо огромное, видео отличное всё понятно!
Спасибо вам мне понравилось все очень помог понять хук useState 💣
здорово, наиболее приближенно к тому, что я ищу. Как понимаю, здесь представленна простая реализация. Получается, что наши компоненты "умные", следят за информацией... И, как понимаю, в дальнейшем, можно сделать их глупыми, реализовав Flux подход.
спасибо за изи вариант тудулиста и отдельное спасибо за библиотеку uuid - она тупо топ. кто не понял как работает uuid то там все просто:
import { v1 as uuidv1 } from 'uuid';
id: uuidv1()
Cпасибо большое, а то я долго застрял на этом моменте)
ДА, огромное тебе спасибо за комент с разъяснением, а то у меня тоже мозг закипел )))
спасибо, добрый человек!
Cпасибо большое ;)
Спасибо за Ваш труд!
Если это кто-то смотрит в 2023, то uuid надо импортировать так "import {v4 as uuid} from "uuid"
"
Около 30:00 он скачивает uuid что бы поставить уникальный id но это глупо так как есть функция Date.now() которая просто указывает id не похожий на другие и не приходится устанавливать uuid тем самым нагружать проект
Как вариант зарандомить ID - Math.random().toString(36).substring(2, 9)
в этом вообще 0 глупости. безусловно, собирать id он мог разными способами. Начиная от Date.now() и вплоть до генерации рандомных чисел. Но зачем делать костыль, если можно воспользоваться методом, который прямо таки и создавался для подобных вещей?
а если Date.now() несколько раз подряд вызвать?
По поводу уникального ID - можно его сгенерировать(зарандомить) таким образом - Math.random().toString(36).substring(2, 9). А так - видеоурок огонь, максимально разжевано!
Добрый день ,а можете подсказать или скинуть часть кода где это прописать?У меня почему-то с uuid ничего не работает
@@ЯнаАртюшкевич Привет, может уже поздно. Но держи :
function saveTodo() {
setTodo([
...todo,
{
id: Math.random().toString(36).substring(2, 9),
title: value,
status: true,
},
]);
}
Я +new Date() генерирую
спасибо, хороший урок
Спасибо, друг!!!!
Куда пропал брат?
У меня изменения ко всем постам добавляются(((
Почему в statusTodo используется метод filter ? И зачем перед каждым использованием map/filter копировать массив через спред?
спред не нужен, вы правы. Про фильтр не помню уже, что там было
Есть ссылка на гит?
44:53 после окончания функций saveTodo у меня выводит ошибка "todo is not iterable". Вообще без понятия как это ошибку исправить в интернете я не нашел. Help
Привет, если актуально, ответь, чем смогу помогу, я смог по уроку все сделать, все работает
please ..can you write the code?
37:30
Зачем
зачем он пишет todo?
потому что
Зачем пишет Todolist? Ну наверное потому что это второй по популярности тестовый кейс на фронта джуна после лендинга