Hooks
Use lifecycle hooks to perform actions during the NuxtHub lifecycle.
Nuxt Hooks
'hub:database:migrations:dirs'
(dirs: string[]) => void | Promise<void>
Add additional directories to scan for database migration files (.sql).
'hub:database:queries:paths'
(queries: string[]) => void | Promise<void>
Add queries that are not tracked in the
_hub_migrations
table which are applied after the database migrations complete.Usage
You can hook into the NuxtHub lifecycle using Nuxt hooks:
nuxt.config.ts
export default defineNuxtConfig({
hooks: {
'hub:database:migrations:dirs': (dirs) => {
dirs.push('my-module/database/migrations')
}
}
})
modules/my-module/index.ts
export default defineNuxtModule({
setup(options, nuxt) {
nuxt.hook('hub:database:migrations:dirs', (dirs) => {
dirs.push('my-module/database/migrations')
})
}
})
Server Hooks
'hub:database:migrations:done'
() => void
Called when the database migrations are completed.
Usage
You can hook into the NuxtHub lifecycle using Nitro hooks:
server/plugins/hub.ts
export default defineNitroPlugin((nitroApp) => {
nitroApp.hooks.hook('database:migrations:done', () => {
console.log('Database migrations are done!')
})
})
Learn more about Nuxt server hooks on the Nuxt documentation.