📣 Just Released! Our official workshop to level up from Nuxt 2 to Nuxt 3.

Register now

<Teleport>

The <Teleport> component teleports a component to a different location in the DOM.

The to target of <Teleport> expects a CSS selector string or an actual DOM node. Nuxt currently has SSR support for teleports to body only, with client-side support for other targets using a <ClientOnly> wrapper.

Example: body Teleport

<template>
<button @click="open = true">
Open Modal
</button>
<Teleport to="body">
<div v-if="open" class="modal">
<p>Hello from the modal!</p>
<button @click="open = false">
Close
</button>
</div>
</Teleport>
</template>

Example: Client-side Teleport

<template>
<ClientOnly>
<Teleport to="#some-selector">
<!-- content -->
</Teleport>
</ClientOnly>
</template>
Read and edit a live example in Docs > Examples > App > Teleport.