Skip to content

Справочник

Сравнение

Обычный onErrorCaptured<NuxtErrorBoundary>vue-error-boundary-kit
Fallback UIстроите сами каждый разслот #errorскоуп-слот fallback: error, reset, retry, retryCount, canRetry
Повтор / сбросвручнуювручнуювстроены resetKeys, resetOnPropsChange, maxRetries; createBackoffRetry() из retry-backoff для возрастающей задержки между попытками
Отчётностьвручнуювручнуюадаптерный паттерн (console/http/sentry/bugsnag/logrocket/otel), tree-shaking по адаптеру, ровно один раз для вложенных границ
Защита от массовых сбоевadapters/rate-limit — обёртка с дедупликацией и ограничением частоты для любого репортера
Хлебные крошкиadapters/breadcrumbs — скользящий трейл событий, opt-in, прикрепляется к отчётам через withBreadcrumbs()
Повтор TanStack Queryручная настройка resetQueries()ручная настройка resetQueries()useQueryErrorReset() из tanstack-query — один вызов, подключается к beforeReset
История отладки/devtoolscreateErrorHistory() + <ErrorHistoryPanel>
Программное использованиеuseErrorBoundary()
За пределами errorCaptureduseGlobalErrorCapture() (опционально, отдельная точка входа)
Модуль Nuxtестьvue-error-boundary-kit/nuxt — автоматически регистрирует <ErrorBoundary> + автоимпорты; useNuxtErrorBoundary() также перехватывает то, что ускользает из любой границы, через собственные хуки Nuxt vue:error/app:error
Ошибки vue-routerне видны onErrorCaptured вообщене видны onErrorCaptured вообщеuseRouterErrorBoundary() из router — перехватывает ошибки navigation guard и асинхронных компонентов маршрута через router.onError()
Помощники для тестовстроите сами каждый разстроите сами каждый разvue-error-boundary-kit/testing — компоненты, бросающие ошибку по требованию, билдер фикстуры CapturedError, framework-агностичный записывающий репортер
Suspense + граница ошибок вместевкладываете <Suspense> и свою границу вручнуювкладываете <Suspense> и <NuxtErrorBoundary> вручную<AsyncBoundary> из async-boundary — один компонент, слоты default/loading/fallback
SSRработает, без замены fallbackработает, без замены fallbackработает, без замены fallback (см. заметки о SSR — это ограничение архитектуры Vue, не специфичное для любого из этих подходов)
Стоимость бандла0часть Nuxt~2.1 кБ gzip ядро; адаптеры/devtools — отдельные точки входа
Готовность к Vapor-режимуН/Дзависит от Nuxtиспользует только официальные onErrorCaptured/h() — никаких внутренних API VDOM-рендерера

Не вошло в v1: полноценный кастомный инспектор для расширения Vue Devtools (тот же функционал закрывает <ErrorHistoryPanel> из этого пакета, не добавляя @vue/devtools-api в зависимости).

Лицензия

MIT