# Avatar

Affichage d'avatar. Trois formes — image, icône, texte — avec repli par ordre de priorité : en cas d'échec de src, on prend successivement icon puis le premier caractère de text.

Avatar
<template>
  <div class="demo-col">
    <div class="demo-row" style="gap: 24px; flex-wrap: wrap">
      <LhAvatar :src="src" alt="Détail de Voyageurs parmi les montagnes et les rivières" />
      <LhAvatar :src="src" shape="square" />
      <LhAvatar text="Fan Kuan" />
      <LhAvatar icon="lh-icon-user" />
      <LhAvatar text="Song du Nord" shape="square" size="large" />
      <LhAvatar text="Guo" size="small" />
      <LhAvatar text="Personnalisé" :size="64" fit="cover" />
    </div>
    <p class="demo-note">En cas d'échec de chargement de l'image, repli vers alt / l'icône / le texte</p>
    <div class="demo-row" style="gap: 24px; flex-wrap: wrap">
      <LhAvatar src="https://placeholder.lhgb.top/broken.png" alt="Échec du chargement" />
      <LhAvatar src="https://placeholder.lhgb.top/broken.png" icon="lh-icon-user" alt="Icône de repli" />
    </div>
  </div>
</template>

<script>
export default {
  data: () => ({
    src: 'data:image/svg+xml,%3Csvg%20xmlns=%27http://www.w3.org/2000/svg%27%20width=%2764%27%20height=%2764%27%3E%3Crect%20width=%2764%27%20height=%2764%27%20fill=%27%23e8e2d5%27/%3E%3Cpath%20d=%27M0%2046%20Q16%2032%2032%2046%20T64%2046%20V64%20H0%20Z%27%20fill=%27%23c9c2b2%27/%3E%3Ctext%20x=%2750%%27%20y=%2726%27%20font-size=%2726%27%20fill=%27%232b4c7c%27%20text-anchor=%27middle%27%20font-family=%27serif%27%3E%E5%B1%B1%3C/text%3E%3C/svg%3E',
  }),
}
</script>

# Props

Prop Description Type Valeur par défaut
src Adresse de l'image ; en son absence, repli successif vers l'icône puis le texte string —
alt Texte de remplacement en cas d'échec de chargement de l'image, servant également d'alt string —
icon Classe de l'icône (affichée lorsque src est vide ou en échec) string —
text Contenu de l'avatar textuel (en l'absence de src et d'icône, on affiche le premier caractère) string —
shape Forme de l'avatar 'circle' \| 'square' 'circle'
size Taille de l'avatar 'small' \| 'default' \| 'large' \| number 'default'
fit Mode de remplissage de l'image 'fill' \| 'contain' \| 'cover' \| 'none' \| 'scale-down' 'cover'
sx Raccourci de mise en page sx — —

Copyright © 2024-2026 FengMo WenXue