`<NuxtPage>` is a built-in component that comes with Nuxt. `NuxtPage` component is required to display top-level or nested pages located in the `/pages` directory.
`NuxtPage` is a wrapper around [`<RouterView>`](https://router.vuejs.org/api/#router-view-props) component from Vue Router. `NuxtPage` component accepts same `name` and `route` props.
For example, passing `static` key, `NuxtPage` component is rendered only once when it is mounted.
```html
<!-- static key -->
<NuxtPagepage-key=“static”/>
```
Alternatively, `pageKey` can be passed as a `key` value via `definePageMeta` from the `<script>` section of your Vue component in the `/pages` directory.
```js
<scriptsetup>
definePageMeta({
key: route => route.fullPath
})
</script>
```
:button-link[Open on StackBlitz]{href="https://stackblitz.com/github/nuxt/framework/tree/main/examples/routing/pages?file=app.vue" blank}
## Custom props
In addition, `NuxtPage` also accepts custom props that you may need to pass further down the hierarchy. These custom props are accessible via `attrs` in the Nuxt app.
```html
<NuxtPage:foobar=“123”/>
```
For example, in above example, value of `foobar` will be available using `attrs.foobar`.