Тут нельзя дать однозначный ответ. Если вы чувствуете, что элемент представляет собой какую-то сущность, которую можно потом переиспользовать, то создавайте компонент. Думая о компонентах имейте ввиду не только визуальную составляющую, но также логическую завершенность. Например, из вашего примера, можно сделать один компонент, который будет отвечать за регистрацию/авторизацию пользователя и он будет изменять свой внешний вид в зависимости от того, что выбрал пользователь.
Вот это читали: https://ru.vuejs.org/v2/guide/single-file-componen... ?
Создавая vue файл вы по сути, создаете компонент. Далее его можно импортировать в др.компонент используя import SomeComponent from 'some-component.vue'
Также использование vue файлов предполагает, что вы используете инструменты типа Webpack или Browserify.
А почему решили, что так будет работать? И что хотите сделать? В template передается строка с шаблоном, вы же пытаетесь импортировать vue файл... Концепция vue файлов есть концепция однофайловых компонентов, т.е. каждый файл представляет собой шаблон, логику и стили какого-то компонента.
Александр: можно повесить catch на любой ответ от сервера, если очередной ответ пришел с ошибкой авторизации, то отправляем запрос на обновление токенов.
Круто) что-то мне подсказывает, что нужно упрощать данный кусок, иначе через месяц без бутылки.. Ну вы сами знаете) У реактивности есть обратная сторона - когда её слишком много, хрен поймешь что происходит)
v-model - двустороннее связывание, если поставите v-bind только, то значение selected не будет изменяться, когда пользователь будет выбирать какой-то элемент списка.
Трудно сказать не видя ваш код. В моем примере value - это входной параметр, он не должен изменяться. this.selected - это переменная, отвечающая за value селекта. Т.е. значение из selected сопоставляется с value из option и при совпадение устанавливается соответствующий элемент. Почитайте доку, там вроде все понятно: https://ru.vuejs.org/v2/guide/forms.html
При создании да, а вот при обновлении может и не работать. Вот пример некорректно работающего кода, может у вас что-то подобное: https://codepen.io/kerf/pen/Ngxmem
Есть ощущение, что проблема у вас в самом компоненте, т.е. данные у вас нормально приходят, но компонент не обновляется. Возможно как-то не правильно биндятся переменные или что-то подобное. Попробуйте упростить пример, не используйте vuex, возьмите тестовые данные для проверки. Выложите код на jsfiddle/codepen.