Skip to content

Avatar (صورة رمزية) ​

يعرض صورة رمزية لمستخدم أو كيان، ويدعم ثلاث هيئات: الصورة، والأيقونة، والنص.

الاستخدام الأساسي ​

vue
<template>
  <lh-avatar src="https://placeholder.invalid/avatar.png" />
  <lh-avatar icon="user" />
  <lh-avatar text="رسم الحبر" />
</template>

الشكل والحجم ​

vue
<template>
  <lh-avatar text="ماء" shape="circle" />
  <lh-avatar text="حبر" shape="square" />
  <lh-avatar text="ص" size="small" />
  <lh-avatar text="ك" size="large" />
</template>

نمط القص ​

يُخطَّط fit إلى mode في <image> الخاص بـ uni: fill → scaleToFill، وcontain → aspectFit، وcover → aspectFill، وnone → center.

vue
<template>
  <lh-avatar src="https://placeholder.invalid/avatar.png" fit="cover" />
  <lh-avatar src="https://placeholder.invalid/avatar.png" fit="contain" />
</template>

scale-down تقريبي

لا يوجد في uni وضع مكافئ لـ scale-down، فيُؤخَذ الأقرب دلالةً وهو aspectFit (عرض كامل مع الحفاظ على النسبة دون تكبير).

التراجع عند فشل التحميل ​

عند فشل تحميل الصورة يُتراجَع وفق الترتيب «أيقونة ← نص ← فارغ»، ويُطلَق حدث error.

vue
<template>
  <lh-avatar
    src="https://placeholder.invalid/broken.png"
    icon="user"
    alt="صورة رمزية"
    @error="onError"
  />
</template>

<script setup lang="ts">
const onError = () => console.log('فشل تحميل الصورة')
</script>

Props ​

الخاصيةالوصفالنوعالافتراضي
srcعنوان الصورة؛ يُتراجَع عند الغياب إلى الأيقونة ثم النصstring—
altالنص البديل عند فشل تحميل الصورة، ويُستخدم أيضًا اسمًا لإمكانية الوصولstring—
iconاسم الأيقونة (تُعرَض عندما يكون src فارغًا أو يفشل تحميله)LhIconName—
textمحتوى الصورة الرمزية النصية (يُؤخَذ أول حرف للعرض عند غياب src وicon)string—
shapeالشكل'circle' | 'square''circle'
sizeالحجم'small' | 'medium' | 'large''medium'
fitنمط قص الصورة (تخطيط إلى mode الخاص بـ uni image)'fill' | 'contain' | 'cover' | 'none' | 'scale-down''cover'
customClassصنف مخصّصstring—
sxخصائص تخطيط سريعةLhSxProps—

Events ​

الحدثالوصفمعامل الاستدعاء
errorفشل تحميل الصورة(e: Event)