Nuxt/docs/content/2.guide/4.going-further/6.nuxt-app.md
Yaël Guilloux dc47c64f14
docs: use nuxt 3 and website theme (#5479)
Co-authored-by: Daniel Roe <daniel@roe.dev>
Co-authored-by: Sébastien Chopin <seb@nuxtjs.com>
Co-authored-by: Pooya Parsa <pooya@pi0.io>
Co-authored-by: pooya parsa <pyapar@gmail.com>
Co-authored-by: Clément Ollivier <clement.o2p@gmail.com>
2022-10-06 11:15:30 +02:00

1.4 KiB

title description
NuxtApp In Nuxt 3, you can access runtime app context within composables, components and plugins.

NuxtApp

In Nuxt 3, you can access runtime app context within composables, components and plugins. In Nuxt 2, this was referred to as Nuxt context.

Accessing NuxtApp

Within composables, plugins and components you can access nuxtApp with useNuxtApp:

function useMyComposable () {
  const nuxtApp = useNuxtApp()
  // access runtime nuxt app instance
}

Plugins also receive nuxtApp as the first argument for convenience. Read more about plugins.

::alert{icon=👉} useNuxtApp (on the server) only works during setup, inside Nuxt plugins or Lifecycle Hooks. ::

Providing Helpers

You can provide helpers to be usable across all composables and application. This usually happens within a Nuxt plugin.

const nuxtApp = useNuxtApp()
nuxtApp.provide('hello', (name) => `Hello ${name}!`)

console.log(nuxtApp.$hello('name')) // Prints "Hello name!"

In Nuxt 2 plugins, this was referred to as inject function.

::alert{icon=👉} It is possible to inject helpers by returning an object with a provide key. See the plugins documentation for more information. ::