⏰ SSR-safe time element for Nuxt 3
SSR-safe time element for Nuxt
<time>
elementInstall and add nuxt-time
to your nuxt.config
.
npx nuxi@latest module add time
export default defineNuxtConfig({
modules: ['nuxt-time'],
})
To use, you can use the <NuxtTime>
component anywhere in your app. It will render a spec-compliant <time>
element.
It accepts datetime
and locale
(optional) properties, along with any property accepted by Intl.DateTimeFormat
(see MDN reference). Note: you can provide a Date
or number
(e.g. Date.now()
) via datetime
and it will be rendered correctly as an ISO-formatted date.
<template>
<!--
Date.now() will safely respect the time on the server, not on the
client. What's more, there will be no flash between server
and client locale formatting.
-->
<NuxtTime :datetime="Date.now()" second="numeric" month="long" day="numeric" />
</template>
Nuxt Time also supports relative time formatting using the Intl.RelativeTimeFormat
API. You can enable this feature by setting the relative
prop to true
.
<template>
<!--
This will display the time relative to the current time, e.g., "5 minutes ago"
-->
<NuxtTime :datetime="Date.now() - 5 * 60 * 1000" relative />
</template>
corepack enable
pnpm install
pnpm dev:prepare
pnpm dev
to start playground in development modeMade with ❤️
Published under the MIT License.