Skip to content
This repository was archived by the owner on Sep 15, 2022. It is now read-only.

Commit db8dd9c

Browse files
committed
Add homework explanations
1 parent 6e3af2b commit db8dd9c

File tree

10 files changed

+74
-6
lines changed

10 files changed

+74
-6
lines changed

02-deep-in-components/README.md

+4-6
Original file line numberDiff line numberDiff line change
@@ -266,17 +266,15 @@ _Уровень сложности: средний_
266266

267267
Нужно усовершенствовать написанный таймер добавлением в него кнопок "Пауза", "Старт" и "Возобновить".
268268

269-
**Задание 3 : Теги для заметок**
269+
**Задание 3 : Поиск по заметкам**
270270

271-
_Уровень сложности: выше среднего_
272-
273-
При создании заметки пользователь может указать список тегов для нее. Затем, при нажатии на тег, должны отфильтровываться заметки с данным тегом. Фильтр должен отображаться сверху, его должна быть возможность его сбросить.
271+
_Уровень сложности: средний_
274272

275-
Важно предусмотреть добавление новых заметок при фильтрации - либо сбрасывать фильтр, либо отфильтровывать заметки вместе с новой. Можно для этого использовать один из методов жизненного цикла 😊
273+
Добавить на страницу поле для поиска (желательно выделить в отдельный компонент). По мере ввода, должны отфильтровываться заметки, которые соответствуют введенному значению.
276274

277275
**Задание 4 : To-do list**
278276

279277
_Уровень сложности: высокий_
280278

281-
Написать список задач. Пользователь может добавить новую задачу, отметить ее как выполненную (просто вычеркнуть ее из списка) и редактировать существующие задачи. Задачи должны сохраняться в localStorage.
279+
Написать список задач. Пользователь может добавить новую задачу, отметить ее как выполненную (просто вычеркнуть ее из списка) и фильтры "Все", "Завершенные" и "Новые". Задачи должны сохраняться в localStorage.
282280

02-deep-in-components/homework/01.md

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# Задание 1 : Сделать выбор цвета для заметки
2+
3+
_Уровень сложности: низкий_
4+
5+
#### Задание
6+
7+
При создании новой заметки реализовать выбор ее цвета. Можно выбирать из всего спектра (<input type="color" />) или использовать только 5-7 ваших любимых цветов (как в Google Keep).
8+
9+
#### Подсказка
10+
11+
Тут есть два варианта - простой и не совсем простой.
12+
13+
**1. Простой вариант**
14+
15+
Мы просто в ```NoteEditor``` добавляем ```<input type="color">```, в котором отслеживаем событие ```onChange```.
16+
17+
**2. Вариант посложнее**
18+
19+
Вы выбираете 5-10 ваших любимых цветов и даете пользователю возможность выбрать один из них. В идеале, для выбора цвета нужно написать отдельный компонент в который будет передаваться событие, которое будет дергаться прри изменении выбранного цвета.
20+
21+
Может выглядеть так:
22+
23+
![Выбор цвета](/02-deep-in-components/images/007.png)

02-deep-in-components/homework/02.md

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Задание 2 : Таймер
2+
3+
_Уровень сложности: средний_
4+
5+
#### Задание
6+
7+
Нужно усовершенствовать написанный таймер добавлением в него кнопок "Пауза", "Старт" и "Возобновить".
8+
9+
#### Подсказка
10+
11+
Есл таймер остановлен, то показывается кнопка "Старт", если работает - "Пауза". По нажатию на кнопку "Старт" таймер должен начинать идти с того места, где он находился. При нажатии "Пауза" - останавливаться. Если пользователь нажимает "Возобновить", то таймер должен начать идти с 0.
12+
13+
Нужно добавить в состояние поле ```isPaused``` и при обработке событий ```onClick``` модифицировать состояние и очищать или запускать таймер.
14+
15+
Может выглядеть таким образом:
16+
17+
![Стоит](/02-deep-in-components/images/008.png)
18+
19+
![Идет](/02-deep-in-components/images/009.png)

02-deep-in-components/homework/03.md

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# Задание 3 : Поиск по заметкам
2+
3+
_Уровень сложности: средний_
4+
5+
#### Задание
6+
7+
Добавить на страницу поле для поиска. Понажатию на кнопку (или клавиишу Enter), должны отфильтроваться заметки, которые соответствуют введенному значению. Если нет заметок, удовлетворяющих условиям поиска - должна отображаться надпись "Ничего не найдено".
8+
9+
#### Подсказка
10+
11+
Тут ничего сложного. Мы такое уже реализовывали в первом уроке. Желательно, выделить поле для поиска в отдельный компонент с событием ```onSearch```.
12+
13+
Важно предусмотреть добавление новых заметок при поиске - либо сбрасывать значение поиска при добавлении заметки, либо отфильтровывать заметки вместе уже вместе с новой. Можно для этого использовать один из методов жизненного цикла 😊
14+
15+
![Search](/02-deep-in-components/images/010.png)

02-deep-in-components/homework/04.md

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Задание 4 : To-do list
2+
3+
_Уровень сложности: высокий_
4+
5+
#### Задание
6+
7+
Написать список задач. Пользователь может добавить новую задачу, отметить ее как выполненную (просто вычеркнуть ее из списка) и фильтры "Все", "Завершенные" и "Новые". Задачи должны сохраняться в localStorage.
8+
9+
#### Подсказка
10+
11+
Делать по аналогии с примером, который был рассмотрен на уроке.
12+
13+
![Search](/02-deep-in-components/images/011.png)

02-deep-in-components/images/007.png

32.6 KB
Loading

02-deep-in-components/images/008.png

15.5 KB
Loading

02-deep-in-components/images/009.png

14.2 KB
Loading

02-deep-in-components/images/010.png

138 KB
Loading

02-deep-in-components/images/011.png

51.1 KB
Loading

0 commit comments

Comments
 (0)