Small overlay showing live FPS for debugging; optional portal to document body, color by thresholds.

Indicador de frames por segundo para depuração de performance. O componente está em @zexon/ui/components/fps. Com strategy="fixed", o conteúdo renderiza num portal para document.body (ou para portalContainer) após o mount, para não ficar preso à hierarquia do layout. Com strategy="absolute", renderiza no sítio (o antecessor deve ter position definido).

A cor do valor segue status interno: bom (text-primary), aviso abaixo de warningThreshold, erro abaixo de errorThreshold.

Importação

import { Fps } from "@zexon/ui/components/fps";

Uso

Exemplo

Para sobrepor à viewport inteira, usa strategy="fixed" (predefinição) e, se precisares, portalContainer para outro nó. enabled={false} remove o componente.

Props

PropTipoPredefiniçãoNotas
strategy"fixed" | "absolute""fixed"fixed usa portal (quando há contentor)
position"top-left" | "top-right" | "bottom-left" | "bottom-right""top-right"Cantos em top-* / bottom-* e left-* / right-*
labelstringPrefixo antes do valor (ex.: FPS)
updateIntervalnumber500Intervalo em ms entre recálculos do valor exibido
warningThresholdnumber30Abaixo disto, estado de aviso
errorThresholdnumber20Abaixo disto, estado de erro
portalContainerElement | DocumentFragment | nulldocument.body após mountSó relevante com strategy="fixed"
enabledbooleantrueSe false, não renderiza
classNamestringClasses extra no contentor

O estado visual (status) é calculado internamente; não é exposto como prop. Demais atributos repassam-se ao div raiz.

Anterior:

Próximo: