Сохранение месяца
Последний шаг: приложение должно запомнить месяц. Сейчас достаточно один раз нажать «Запустить» или перезагрузить страницу — и все траты пропадают.
Задача. Сохраняйте траты в localStorage под ключом expenses каждый раз, когда список меняется, а при запуске приложения читайте их обратно, чтобы список и все суммы снова их показывали. Затем добавьте под суммами кнопку с id new-month и текстом Новый месяц: нажатие на неё очищает список для начала нового месяца, и пустой список тоже сохраняется.
Совет: один наблюдатель может сохранять после каждого изменения, что бы его ни вызвало. push() изменяет массив изнутри, поэтому наблюдателю нужен { deep: true }. Поставьте кнопку вне формы: кнопка внутри формы отправляет её.
Это весь проект. Ваше приложение проверяет данные, введённые в форму, ведёт список, подсчитывает его тремя способами с помощью вычисляемых значений, которые всегда актуальны, и запоминает месяц в браузере одним наблюдателем. В следующем уроке, «Компоненты», вы научитесь делить такое приложение на небольшие части, каждая в своём файле.
Задание
- 1
Сохраняйте траты каждый раз, когда список меняется.
- 2
При запуске приложения показывайте сохранённые траты. Добавьте несколько и нажмите «Запустить»: список и суммы остаются.
- 3
Добавьте кнопку «Новый месяц».