Задать вопрос
@mletov

Как очищать форму на Angular при нажатии кнопки «Назад»?

Пожалуйста, подскажите:

Есть форма. Если пользователь заполнил какие-то из ее полей, но не стал отправлять, а перешел на другую страницу по ссылке, а потом нажал кнопку "Назад", то нужно чтобы форма была пустой.

Проблема вроде бы известная, на SO находил обсуждения.

Что пробовал:

1) autocomplete="off" как на теге form, так и на отдельных полях. Почему-то отлично срабатывает на локальной машине на localhost:4200, но не работает на внешнем сервере после публикации.

2) Использование ngOninit и ngOnDestroy из этого примера
https://stackoverflow.com/questions/42388204/ngoni...

не работает если внешняя ссылка, по которой осуществляется уход со страницы, указана напрямую
<a href="/login"">Войти</a>, но работает если переход сделан через вызов рутинга после onclick <a href="#" (click)="goToLogin()">Войти</a>. Это тоже так себе решение, вешать обработчики на ссылки вместо нормального href.

Второе решение, которое заработало - вешать на ссылку очистку формы перед переходом.
Но это тоже костыль, ссылок может быть много.
  • Вопрос задан
  • 62 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Javascript.ru
    Курс по Angular
    6 недель
    Далее
  • Skillfactory
    Профессия Frontend-разработчик PRO
    14 месяцев
    Далее
  • Компьютерная академия «TOP»
    Frontend разработка
    12 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы