Ir al contenido
Saltar al contenido
Animated Fluent Emojis
Menú
Español

Precargar para un selector

Calienta el manifest y los sprite sheets antes de que se abra un selector de emojis, para que los emojis aparezcan sin una carga visible.

Calienta el manifest con anticipación

preloadEmojis sin argumentos empieza a solicitar el manifest antes de que se renderice cualquier Emoji. Nunca se rechaza, así que basta con void:

import { preloadEmojis } from 'animated-fluent-emojis'
void preloadEmojis()

Llámalo cuando sea probable que el usuario abra el selector, por ejemplo al pasar el cursor o al enfocar el botón que lo activa, o cuando se monta el shell de la app.

Calienta los sprite sheets que vas a mostrar

Pasa ids para solicitar sus sprite sheets cuando el manifest esté listo. Pasa skinTone para calentar la variante que verá el usuario, en los emojis que tienen tonos de piel:

const quickReactions = ['1f44b_wavinghand', '1f525_fire', '1f389_partypopper']
function handlePickerTriggerHover() {
void preloadEmojis(quickReactions, { skinTone: 'medium' })
}

Calienta solo los ids que vas a renderizar primero. Un selector con cientos de emojis no debería precargarlos todos; los sprite sheets se cargan de forma diferida (loading="lazy") a medida que se acercan al viewport. skinTone es uno de 'default', 'light', 'medium-light', 'medium', 'medium-dark' o 'dark'.

Configura primero el asset site

Si usas un asset site propio, llama a configureEmojis antes que a preloadEmojis. Cambiar el asset site después de una precarga reinicia el manifest, y las solicitudes calentadas se desperdician.

Cuando falla la red

La solicitud del manifest se rinde tras 15 segundos. Un manifest fallido se reintenta en la siguiente llamada a preloadEmojis, en el siguiente montaje o cuando el navegador vuelve a estar en línea, así que es seguro volver a llamarlo desde el botón. Consulta precarga y fallback.