Форма - это самый распространенный компонент веб-страниц. Сейчас очень много фреймворков и библиотек для решения стандартных задач. Например, легковесный фреймворк Buefy для Vue (если хочется, то css стили можно отключать, оставив только js начинку). Ваш код значительно уменьшится от применения готовых компонентов.
Повторное использование ЧУЖОГО кода должно стать для вас привычкой.
Во-вторых, подключите eslint и следуйте его рекомендациям. У вас очень много отступов и мест, где код можно сделать компактнее. Например я пишу так:
if (var === true) {
do_something()
} else {
print_something()
}
Создаю свою первую форму на vue.js и видимо делаю, что-то не так.
Ну и здесь у вас лишняя запятая после слова "делаю")))