Плагин Vue и модуль Nuxt
Плагин Vue
import { VueToastPlugin } from 'vue-toast-kit'
import 'vue-toast-kit/style'
app.use(VueToastPlugin, {
position: 'bottom-right',
maxVisible: 5,
duration: 4000,
theme: 'system',
closable: true,
pauseOnHover: true,
pauseOnFocusLoss: true,
registerComponent: true, // авто-регистрация <ToastContainer> глобально
})VueToastPluginOptions
position
ToastPosition · по умолчанию: 'bottom-right'
Позиция контейнера по умолчанию.
maxVisible
number · по умолчанию: 5
Максимум видимых тостов по умолчанию.
duration
number · по умолчанию: 4000
Длительность авто-закрытия по умолчанию в мс.
theme
'light' | 'dark' | 'system' · по умолчанию: —
Тема по умолчанию для всех контейнеров.
closable
boolean · по умолчанию: true
Показывать кнопку закрытия по умолчанию.
pauseOnHover
boolean · по умолчанию: true
Пауза при наведении по умолчанию.
pauseOnFocusLoss
boolean · по умолчанию: true
Пауза при уходе вкладки в фон по умолчанию.
ignoreSSR
boolean · по умолчанию: false
Отключить SSR-буферизацию — тосты, вызванные на сервере, отбрасываются вместо буферизации для последующего сброса на клиенте.
registerComponent
boolean · по умолчанию: true
Глобально регистрировать <ToastContainer>.
rateLimit
number · по умолчанию: —
Максимум тостов в пределах rateLimitWindowMs; лишние тихо отбрасываются.
rateLimitWindowMs
number · по умолчанию: 1000
Окно в мс для ограничения частоты.
persistStorage
boolean · по умолчанию: false
Включить сохранение/восстановление в localStorage для тостов с persist: true.
Все эти опции (кроме
registerComponent, которая только управляет глобальной регистрацией компонента) читаются<ToastContainer>иToastQueueкак fallback-дефолты, когда соответствующий проп или опция конкретного тоста не заданы явно — см. ToastContainer иToastOptions.
Модуль Nuxt
// nuxt.config.ts
export default defineNuxtConfig({
modules: ['vue-toast-kit/nuxt'],
vueToastKit: {
position: 'bottom-right',
maxVisible: 5,
duration: 4000,
theme: 'system',
closable: true,
pauseOnHover: true,
pauseOnFocusLoss: true,
registerComponent: true,
},
})Модуль автоматически:
- Регистрирует плагин Vue
- Авто-импортирует
useToast,useToastState,createToastContextи синглтонtoast— явный импорт не нужен - Авто-импортирует
<ToastContainer>как глобальный компонент (когдаregisterComponent: true) - Внедряет
vue-toast-kit/style.cssв CSS-пайплайн Nuxt
CSS загружается автоматически — ручной импорт vue-toast-kit/style в Nuxt не требуется.