Angular, как сохранить целую страницу или данные компонента для последующего использования
У меня есть приложение angular 6, в котором есть разные компоненты (экраны), использующие горизонтальный шаговый элемент @angular/material, и каждый шаг имеет сложные формы (формы и группы форм на основе шаблонов), и я хочу сохранить все этапы в черновике (может быть в localStorage или mongodb) если процесс не завершен или если пользователь хочет сохранить его, чтобы продолжить позже, но структура всех компонентов различна, потому что они имеют разные группы форм и переменные членов класса, поэтому я спрашиваю, есть ли какое-либо решение для сохранения всего шаговый или целый угловой компонент с данными, поэтому, когда пользователь захочет использовать, продолжит ли процесс без потери своих данных?
ПРИМЕЧАНИЕ: все компоненты имеют разные переменные, которые меняются при заполнении форм, а некоторые используются для скрытия некоторой части app/formControls.
2 ответа
Вы должны сохранить данные клиента в кэше сервера или в БД, вы можете сохранить статус, если это isDraft, isSave или isSubmitted, чтобы вы могли получить подробную информацию, если клиент сохранил или отправил данные.
Вы можете использовать веб-хранилище браузера, большинство последних браузеров теперь поддерживают эту функцию https://www.w3schools.com/html/html5_webstorage.asp если вы уходите со страницы, вы всегда можете проверить это хранилище, но с хранилищем сеансов вы Необходимо помнить, что для каждой новой вкладки вы теряете данные, которые вы сохранили в хранилище сеансов, если вам нужно, чтобы данные были доступны во всем браузере, даже при использовании других вкладок, локальное хранилище было бы целесообразно, иначе вы также можете использовать файлы cookie для поддержки данные и восстановить пользовательские входы.