<NuxtRouteAnnouncer>
该 <NuxtRouteAnnouncer> 组件会添加一个隐藏元素,包含页面标题,以便向辅助技术通告路由变化。
此组件在 Nuxt v3.12+ 可用。
用法
在你的 app.vue
或 app/layouts/
中添加 <NuxtRouteAnnouncer/>
,通过向辅助技术通知页面标题变化来增强可访问性。这可确保依赖屏幕阅读器的用户能够听到导航变化。
app/app.vue
<template>
<NuxtRouteAnnouncer />
<NuxtLayout>
<NuxtPage />
</NuxtLayout>
</template>
插槽
你可以通过路由通告组件的默认插槽传入自定义的 HTML 或组件。
<template>
<NuxtRouteAnnouncer>
<template #default="{ message }">
<p>{{ message }} was loaded.</p>
</template>
</NuxtRouteAnnouncer>
</template>
属性
atomic
: 控制屏幕阅读器是在更新时只通告变化还是朗读全部内容。设置为 true 则在更新时朗读全部内容,为 false 则仅通告变化。(默认false
)politeness
: 设置屏幕阅读器通告的优先级:off
(禁用通告)、polite
(等待空闲)或assertive
(立即打断)。(默认polite
)
该组件是可选的。
要实现完全自定义,你可以基于 其源码 自行实现一个。
要实现完全自定义,你可以基于 其源码 自行实现一个。
你可以使用
useRouteAnnouncer
组合函数 钩入底层的通告器实例,从而设置自定义的通告消息。