SSR

Nuxt UI heeft first-party ondersteuning voor Vue SSR. Deze handleiding helpt je om het volledig ingeschakeld te hebben.

Gebruik

Bij gebruik van Nuxt UI met Nuxt framework zal de SSR server volledig out of the box werken. Wanneer u het echter met pure Vue gebruikt, moet u op enkele details letten om het naar verwachting te laten werken.

Color Variabelen Injectie

Nuxt UI injecteert standaard in de <head> van de documentkleurvariabelen die voor alle componenten worden gebruikt. Aangezien het document niet wordt beheerd door de UI-bibliotheek in de Vue SSR, moet u dat handmatig injecteren.

Dat kun je doen door @unhead op de volgende manier te gebruiken:

import { createHead, renderSSRHead } from '@unhead/vue/server'

// Create the header with unhead
const head = createHead()

// Render SSR header and append it to the SSR application instance
const payload = await renderSSRHead(head)
app.head.push(payload.headTags)

Color Scheme Detectie

Hetzelfde geldt voor de detectie van het kleurenschema. Om flashings in de SSR te voorkomen vanwege het geselecteerde kleurschemaverschil, moet u het kleurenschema van de gebruiker detecteren voordat de applicatie wordt geïnitialiseerd.

Als u het onderstaande script aan de <head> van uw document toevoegt, wordt gedetecteerd of de gebruiker een donker thema gebruikt en wordt daarom de SSR ook in het donkere thema weergegeven.

<script>
const theme = localStorage.getItem('vueuse-color-scheme') || 'auto'
if (theme === 'dark' || (theme === 'auto' && window.matchMedia('(prefers-color-scheme: dark)').matches)) {
  document.documentElement.classList.add('dark')
} else {
  document.documentElement.classList.remove('dark')
}
</script>

Icons weergeven

Nuxt UI bundelt de pictogrammen die het gebruikt in uw build, zodat ze worden weergegeven tijdens SSR en volledig offline werken zodra u de pictogramverzameling lokaal installeert, zonder verzoek aan de Iconify API. Bekijk de Icons integratie om dit in te stellen en uw eigen pictogrammen te bundelen.