Как отреагировать и что делать при переходе команды с React на Vue
Что проверяют
Отношение к решению, которое приняли без вас, и умение превратить его в план. Интервьюер хочет увидеть, что вы не спорите ради привычного стека, но и не соглашаетесь молча переписать всё за квартал. Следом часто спрашивают, как переносить работающее приложение, не останавливая разработку фич.
Как отвечать
Начните с реакции: выяснить причину. Найм, единый стек с другими командами, требование заказчика это разные мотивы, и от них зависит, нужен ли полный перенос или достаточно писать на Vue новое. Если видите риски, называйте их с цифрами: объём кода, покрытие тестами, сроки.
Дальше план миграции:
- постепенно, а не разом: паттерн strangler, новые экраны на Vue, старые переписываются по мере доработки. Сосуществование обеспечивают микрофронтенды (Module Federation, single-spa) или монтирование Vue-островов внутрь React-страниц;
- соответствие понятий:
useStateсоответствуетrefиreactive,useMemoсоответствуетcomputed,useEffectчастично заменяетсяwatch,watchEffectиonMounted,childrenближе всего к слотам, колбэки из props кemit. Composition API в Vue 3 после хуков выглядит знакомо; - экосистема: состояние в Pinia (Vuex официально в режиме поддержки, для нового кода не рекомендуется), Vue Router, Nuxt вместо Next для SSR, тесты на Vitest и Vue Test Utils;
- страховка: E2E-тесты на Playwright не зависят от фреймворка и показывают, что после переноса экран ведёт себя так же. Их стоит нарастить до начала миграции;
- общее вне фреймворка: API-клиент, валидация, типы и бизнес-логика выносятся в чистый TypeScript и работают в обеих частях.
Команде помогают гайд с соглашениями, ревью первых Vue-компонентов опытным человеком и пилот на небольшом модуле.
Где спотыкаются
Предлагают переписать всё с нуля с заморозкой фич. Бизнес на это почти никогда не соглашается, а сроки таких проектов обычно срываются.
Переносят привычки из React: деструктурируют reactive-объект и теряют реактивность, ищут аналог повторного рендера там, где Vue сам отслеживает зависимости.
Реагируют эмоционально («Vue хуже») без аргументов. Для интервьюера это сигнал, что с вами будет сложно в любом командном решении.