Новое:Talanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

+661новая вакансия за сутки·58 731вакансия открыта сейчас·Новое:Talanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

Новые вакансии в TelegramРаботодателям
Talanto
Вакансии
Компании5 712
РезюмеAIПодготовкаСтатьи
ТарифыТарифы
Войти

Не нашли подходящее?

Пусть нужная вакансия найдёт вас сама.

  1. Подборка в TelegramНовые вакансии по вашему фильтру — сразу в бота.Подключить
  2. Мэтчи по резюмеЗагрузите резюме — покажем, где вы подходите лучше всего.Загрузить
  3. Сохранить фильтрНастройте поиск один раз и возвращайтесь к новым вакансиям.Настроить
Что нового на TalantoTalanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

Для работодателей

Опубликуйте вакансию — отклики придут в ваш кабинет.

  1. Вакансиябесплатно
  2. Откликиконтакты бесплатно
  3. Наймэтапы и интервью

40 компаний публикуют вакансии напрямую · 4 393 кандидата открыты к предложениям

Разместить вакансию

Популярные направления

Все подборки
  • Python11 079
  • Облачные технологии8 824
  • QA вакансии2 977
  • Android1 395
  • Инженер данных1 032
  • Продакт-менеджер351

Разработка

  • Backend вакансии1 342
  • iOS1 307
  • AI вакансии660
  • Fullstack вакансии524
  • Frontend вакансии465
  • Mobile вакансии28

По стеку

  • Go6 622
  • Java3 670
  • Kotlin1 199
  • Node.js1 190
  • Rust1 181
  • .NET780
  • PHP329
  • C++301
  • C#211

DevOps и инфраструктура

  • Kubernetes5 251
  • Linux-инфраструктура4 138
  • DevOps вакансии3 024
  • Terraform / IaC2 834
  • Мониторинг и Observability1 406
  • CI/CD917
  • SRE389
  • Кибербезопасность40

Аналитика и данные

  • Аналитик данных586
  • Бизнес-аналитик487
  • Data Scientist458
  • Системный аналитик75

Другие направления

  • Проджект-менеджер114
  • UI/UX дизайн74
  • Ручное тестирование14

По регионам

  • Вакансии в США31 201
  • Вакансии в Европе11 507
  • Работа в России3 630
  • Вакансии в Канаде2 546

По формату

  • Удалённые вакансии47 761
  • Релокация в США31 201
  • Гибридная работа7 699
  • Офисная работа6 071

По уровню

  • Senior вакансии27 027
  • Middle вакансии12 284
  • Junior вакансии4 495

Сейчас нанимают

Все компании
  • Wise196 вакансий
  • Rakuten188 вакансий
  • ASML163 вакансии
  • Grab134 вакансии
  • Celonis48 вакансий
  • Spotify38 вакансий
  • Adyen28 вакансий
  • Infobip28 вакансий
  • Monzo20 вакансий
  • Darktrace17 вакансий

Вакансии из 344 источников: карьерные страницы компаний и джоб-борды.

КомпанииО насНовостиПубличная офертаУсловия использованияПолитика конфиденциальностиПоддержка
←К теме Vue.jsВсе вопросы
Vue.jsJuniorТеория

В чём разница между v-if, v-else-if, v-else и v-show?

В закладки
Сначала попробуйте ответить сами30 секунд
Сравнить с ответом ↓

v-if полностью добавляет/удаляет элемент из DOM, v-show только переключает display: none. v-if дешевле при частом отсутствии элемента, v-show — при частых переключениях видимости.

v-if: условный рендеринг

Директива v-if полностью монтирует и размонтирует компонент/элемент. При false элемент отсутствует в DOM.

<template>
  <div v-if="isLoggedIn">
    <UserProfile />
  </div>
  <div v-else>
    <LoginForm />
  </div>
</template>

При переходе false → true Vue создаёт элемент с нуля, запускает хуки onMounted, делает запросы данных. При true → false — вызывает onUnmounted, освобождает ресурсы.

v-else-if и v-else

Должны следовать непосредственно за v-if или v-else-if на соседнем элементе:

<p v-if="status === 'loading'">Загрузка...</p>
<p v-else-if="status === 'error'">Ошибка: {{ errorMsg }}</p>
<p v-else>Готово</p>

v-show: CSS-переключение

Директива v-show всегда рендерит элемент в DOM, управляя только инлайн-стилем display:

<div v-show="isMenuOpen">
  <nav>...</nav>
</div>
<!-- Результат при false: <div style="display: none;">...</div> -->

Хуки жизненного цикла не вызываются при переключении v-show.

Когда что использовать

  • v-if — когда элемент редко отображается (условие ложно большую часть времени) или несёт дорогостоящую инициализацию. Пример: блок для авторизованных пользователей.
  • v-show — когда элемент часто переключается (dropdown-меню, аккордеон, tooltips). Первичная загрузка страницы дороже, но переключения мгновенны.

Использование с <template>

v-if можно применять к <template> — невидимой обёртке для нескольких элементов:

<template v-if="hasData">
  <h2>Результаты</h2>
  <ul>
    <li v-for="item in items" :key="item.id">{{ item.name }}</li>
  </ul>
</template>

v-show не работает с <template> — применяйте только к реальным элементам.

Приоритет v-if vs v-for

В Vue 3 v-if имеет более высокий приоритет, чем v-for на одном элементе (в Vue 2 — наоборот). Не смешивайте их:

<!-- Плохо: v-if выполняется раньше v-for, item недоступен -->
<li v-for="item in list" v-if="item.active">{{ item.name }}</li>

<!-- Хорошо: фильтрация через computed -->
<li v-for="item in activeItems" :key="item.id">{{ item.name }}</li>

Подводные камни

  • v-show не работает с тегом <template> и с компонентами, у которых display переопределён в CSS как !important.
  • Компоненты под v-if уничтожаются при скрытии — локальное состояние (введённые данные в форме) теряется. Используйте v-show или выносите состояние выше.
  • Переход между v-else-ветками с одинаковым тегом без key — Vue переиспользует DOM-узел. Добавьте key чтобы принудить пересоздание.
  • Тяжёлые компоненты под v-show рендерятся при загрузке страницы даже если скрыты — это может замедлить LCP. Используйте v-if + <Suspense> для отложенного рендера.
  • Смешение v-if и v-for на одном элементе — признанный антипаттерн; всегда разносите их по разным уровням.

Типичные ошибки

  • Использовать v-show для одноразового условного блока, и зря держать DOM.
  • Использовать v-if для часто мигающего тултипа.
  • Совмещать v-if и v-for на одном узле.
  • Считать, что v-show улучшает SEO больше, чем v-if — для поисковика оба возвращают разметку, важна семантика.

Что проверяет интервьюер

  • Понимает разницу «в DOM/нет в DOM».
  • Знает, что v-show нельзя применить к <template>.
  • Может назвать сценарии для каждого.
  • Не путает поведение v-else-if с обычным if-else в шаблоне.

Как вы знаете этот вопрос?

Проверить себя по теме Vue.js →

Источники

  • https://vuejs.org/guide/essentials/conditional.html

Связанные темы

Vue.jsperformance-debuggingtemplatingvue-fundamentals

Частые вопросы на собеседовании

  • Как работает система реактивности Vue? Что изменилось между Vue 2 и Vue 3 (Proxy вместо Object.defineProperty)?
  • Что такое Pinia? Чем она отличается от Vuex и почему является рекомендованным менеджером состояния для Vue 3?
  • Что такое ref() и reactive() в Composition API? Когда использовать каждый?
  • В каких типах frontend-проектов Vue.js даёт реальный выигрыш, а где будет избыточен или неудачен?