@tantumus21

Как сбросить компонент к изначальному состоянию?

В компоненте есть форма. После успешного сабмита форма заменяется на div с сообщением об успешном сабмите. Переключение с окна формы на окно сообщения происходит при изменении флага isSubmitted с false на true.
Помимо сообщения о том, что форма отправлена, пользователю предлагается либо перейти на другую страницу, либо снова заполнить и отправить форму, но уже с другими данными.
Вопрос в том, как сбросить весь компонент к изначальному его состоянию? Чтобы затерлись все инпуты, флаг isSubmitted снова стал false, да и все остальные переменные вернулись к дефолтному состоянию? Сейчас я это делаю через тэг <a>, который направляет на эту же страницу. Но мне не нравится тот факт, что страница рендерится заново, а особенно то, что она при этом мелькает.
В свою очередь, присваивание всем переменным, которые используются в компоненте, их дефолтное значение мне тоже кажется не лучшей идеей.
Что подскажете в данной ситуации?
  • Вопрос задан
  • 38 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
присваивание всем переменным, которые используются в компоненте, их дефолтное значение мне тоже кажется не лучшей идеей

Кроме "кажется" другие возражения против данного способа есть?

Если не устраивает объём кода - вынесите его в отдельный метод, который будет вызываться при создании экземпляра компонента и когда значения надо сбросить.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы