diff --git a/packages/bridge/module.cjs b/packages/bridge/module.cjs index 1f138202d..03c5d7cc6 100644 --- a/packages/bridge/module.cjs +++ b/packages/bridge/module.cjs @@ -40,6 +40,17 @@ module.exports.defineNuxtConfig = (config = {}) => { } nuxtCtx.set(nuxt) + // Mock new hookable methods + nuxt.removeHook ||= nuxt.clearHook.bind(nuxt) + nuxt.removeAllHooks ||= nuxt.clearHooks.bind(nuxt) + nuxt.hookOnce ||= (name, fn, ...hookArgs) => { + const unsub = nuxt.hook(name, (...args) => { + unsub() + return fn(...args) + }, ...hookArgs) + return unsub + } + // Mock _layers for nitro and auto-imports nuxt.options._layers = nuxt.options._layers || [{ config: nuxt.options,