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

+1 210новых вакансий за сутки·93 612вакансий открыто сейчас·Новое:Talanto осенью: поиск с цифрами, вакансия по шагам и каталог компаний

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

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

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

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

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

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

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

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

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

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

Все подборки
  • Python17 126
  • Облачные технологии14 083
  • QA вакансии3 456
  • Backend вакансии2 115
  • Инженер данных1 809
  • Продакт-менеджер1 261

Разработка

  • Android1 862
  • iOS1 700
  • Fullstack вакансии986
  • AI вакансии950
  • Frontend вакансии744
  • Mobile вакансии44

По стеку

  • Go8 688
  • Java6 537
  • Node.js2 026
  • .NET1 722
  • Kotlin1 611
  • Rust1 458
  • C#710
  • PHP682
  • C++571

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

  • Kubernetes7 772
  • DevOps вакансии6 054
  • Linux-инфраструктура5 493
  • Terraform / IaC4 275
  • CI/CD3 239
  • Мониторинг и Observability1 790
  • SRE568
  • Кибербезопасность458

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

  • Data Scientist1 143
  • Бизнес-аналитик923
  • Аналитик данных857
  • Системный аналитик152

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

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

По регионам

  • Вакансии в США44 276
  • Вакансии в Европе23 819
  • Вакансии в Канаде4 471
  • Работа в России3 904

По формату

  • Удалённые вакансии74 928
  • Релокация в США44 273
  • Гибридная работа12 388
  • Офисная работа7 083

По уровню

  • Senior вакансии42 625
  • Middle вакансии20 854
  • Junior вакансии6 721

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

Все компании
  • Wise190 вакансий
  • Rakuten189 вакансий
  • ASML166 вакансий
  • Grab137 вакансий
  • Celonis39 вакансий
  • Spotify37 вакансий
  • Adyen28 вакансий
  • Infobip28 вакансий
  • Monzo20 вакансий
  • Darktrace16 вакансий

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

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

Что такое модули (modules) Nuxt? Чем они отличаются от плагинов?

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

Плагины работают в runtime при старте приложения и добавляют возможности в Vue instance через defineNuxtPlugin; модули работают на этапе сборки через Nuxt Kit и могут добавлять компоненты, composables, server-роуты и изменять конфигурацию Vite/webpack.

Плагины (Plugins)

Плагины запускаются при каждом старте приложения — на сервере при SSR и на клиенте после гидратации. Они получают доступ к Nuxt app instance и Vue.

// plugins/my-plugin.ts
export default defineNuxtPlugin((nuxtApp) => {
  // Регистрируем глобальную директиву Vue
  nuxtApp.vueApp.directive('focus', {
    mounted(el) {
      el.focus();
    }
  });

  // Предоставляем утилиту через provide/inject
  return {
    provide: {
      formatPrice: (amount: number, currency: string) =>
        new Intl.NumberFormat('ru-RU', { style: 'currency', currency }).format(amount)
    }
  };
});
// Использование в компоненте
<script setup lang="ts">
const { $formatPrice } = useNuxtApp();
const price = $formatPrice(1200, 'USD'); // '$1,200.00'
</script>

Суффикс файла управляет окружением:

  • my-plugin.ts — выполняется и на сервере, и на клиенте
  • my-plugin.client.ts — только на клиенте
  • my-plugin.server.ts — только на сервере

Модули и плагины Nuxt: в чём разница

Модули и плагины решают разные задачи на разных этапах жизненного цикла Nuxt. Модули — это расширения времени сборки (build-time), плагины — это код, выполняемый во время инициализации приложения (runtime).

Модули (Modules)

Модули работают на этапе сборки (в Nuxt Kit). Они могут добавлять компоненты, composables, server-роуты, изменять конфигурацию webpack/vite, регистрировать плагины программно, добавлять хуки Nuxt. Модули — это то, что вы видите в nuxt.config.ts в массиве modules.

// modules/my-module.ts
import { defineNuxtModule, addPlugin, createResolver, addComponent } from '@nuxt/kit';

export default defineNuxtModule({
  meta: {
    name: 'my-analytics',
    configKey: 'analytics'
  },
  defaults: {
    trackingId: '',
    debug: false
  },
  setup(options, nuxt) {
    const resolver = createResolver(import.meta.url);

    // Добавляем runtime-плагин из модуля
    addPlugin({
      src: resolver.resolve('./runtime/plugin'),
      mode: 'client'
    });

    // Добавляем компонент
    addComponent({
      name: 'AnalyticsPageView',
      filePath: resolver.resolve('./runtime/components/PageView.vue')
    });

    // Передаём конфиг в runtimeConfig для использования в плагине
    nuxt.options.runtimeConfig.public.analyticsId = options.trackingId;

    // Добавляем хук
    nuxt.hook('build:done', () => {
      console.log('Analytics module: build complete');
    });
  }
});
// nuxt.config.ts
export default defineNuxtConfig({
  modules: [
    './modules/my-module',
    // или npm-пакет:
    '@nuxtjs/tailwindcss'
  ],
  analytics: {
    trackingId: 'GA-XXXXX',
    debug: true
  }
});

Ключевые отличия

  • Время выполнения: модули — сборка, плагины — runtime.
  • Доступ: модули используют Nuxt Kit API (addComponent, addPlugin, addServerHandler); плагины — Vue app API и Nuxt composables.
  • Конфигурация: модули принимают настройки через nuxt.config.ts с typesafe дефолтами; плагины конфигурируются через runtimeConfig или env-переменные.
  • Распространение: модули публикуются как npm-пакеты с полным контролем над build pipeline; плагины — просто файлы, которые можно скопировать.

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

  • Плагин — если нужно добавить что-то в Vue instance, зарегистрировать директиву, инициализировать клиентскую библиотеку (Sentry, Pinia store).
  • Модуль — если нужно добавить компоненты/composables в auto-import, изменить webpack/vite конфиг, добавить server-роуты, создать переиспользуемую функциональность для нескольких проектов.

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

  • Плагины с .client.ts суффиксом не выполняются при SSR — если компонент обращается к $myPlugin во время серверного рендера, получите ошибку «undefined».
  • Порядок загрузки плагинов — алфавитный; числовые префиксы (01.analytics.ts) — единственный способ гарантировать порядок.
  • Модули должны использовать createResolver(import.meta.url) для резолва путей — абсолютные пути не работают при публикации в npm.
  • Изменения в файлах модуля не всегда подхватываются hot reload — нужен полный рестарт dev-сервера.
  • addPlugin внутри модуля добавляет плагин в bundle приложения, даже если пользователь не использует эту функциональность — добавляйте только необходимое.
  • Типизация для provide в плагинах требует дополнения модуля TypeScript через declare module '#app' — без этого useNuxtApp().$myUtil будет иметь тип any.
  • Модули имеют доступ к nuxt.options на этапе сборки, но не к runtime-данным (запросам, пользователям) — это только для конфигурации.

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

  • В чём разница между composable'ами useAsyncData и useFetch?
  • Что такое useState() в Nuxt и чем он отличается от Vue ref()?
  • Что такое серверный движок Nitro в Nuxt 3 и что он обеспечивает?
  • Что такое Nuxt и какие проблемы он решает по сравнению с обычным Vue.js-приложением?

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

  • Путать Nuxt modules с похожим API из соседнего фреймворка.
  • Не объяснять, где код выполняется: сервер, клиент, build step или runtime.
  • Игнорировать влияние на hydration, cache, bundle size или безопасность.

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

  • Точно объясняет назначение механизма «Nuxt modules».
  • Показывает корректный минимальный пример без выдуманных API.
  • Называет ограничения, failure modes и production-компромиссы.

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

Проверить себя по теме Nuxt →

Источники

  • https://nuxt.com/docs/3.x/guide/concepts/modules
  • https://nuxt.com/docs/3.x/guide/directory-structure/plugins

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

Nuxtarchitecture-tradeoffsframework-extension