Skip to content

دعم المنصات ​

نطاق المنصات في الإصدار الأول ​

المنصةالحالةالملاحظة
H5✅ مكتملجميع المكوّنات بكامل ميزاتها
برنامج WeChat المصغر✅ مكتمل (مع تخفيض جزئي)تُخفَّض قدرات طبقات الحوار على مستوى سطح المكتب، انظر الجدول أدناه
برامج Alipay / Douyin المصغرة🚫 غير مدعومة في الإصدار الأولستُضاف أعمدة لاحقًا بعد التحقق من كل منصة على حدة عبر الترجمة الشرطية
التطبيقات (nvue)🚫 لن تُدعمنظام عرض nvue يختلف عن webview وليس ضمن خارطة الطريق

مصفوفة قدرات المكوّنات ​

«التخفيض» يعني إزالة القدرات غير المدعومة على المنصة عبر حراسة وقت الترجمة (لا يوجد كود ميت داخل حزمة البرنامج المصغر)، وليس فشلًا في وقت التشغيل.

المكوّنH5برنامج WeChat المصغراستراتيجية التخفيض / الملاحظة
config-providerمكتملمكتملprovide/inject + متغيّرات CSS المضمّنة متاحة على كل المنصات؛ الوضع الداكن يعتمد على تبديل الفئة page.dark (لا يوجد document)
button / tagمكتملمكتمل—
iconمكتملمكتملحلّ خط iconfont (في الويب يكون SVG مضمّنًا، انظر «فروق عرض icon» أدناه)
inputمكتملمكتملأنماط العنصر النائب عبر prop placeholder-style (لا يدعم MP العنصر الزائف ::placeholder)
checkbox / radio / switchمكتملمكتملمرسومة عبر view (دون المكوّنات الأصلية، لتوحيد لغة التصميم lh)
form / form-itemمكتملمكتملمنطق التحقق في دوالّ النواة النقية، صفر اعتماد على المنصة
selectمكتملمُخفَّضroot-portal + القياس بإطارين؛ التنقل بلوحة المفاتيح في H5 فقط، ويعتمد MP على النقر + scroll-view
dialogمكتملمُخفَّضroot-portal؛ focus-trap / lockScroll في H5 فقط، ويعتمد MP على اعتراض القناع كحل احتياطي
tooltipمكتملمُخفَّضالقياس بإطارين؛ لا يوجد hover، يُطلَق في MP بالنقر / اللمس
message / loadingمكتملمكتملنمط نقطة التركيب (لا يوجد document في البرنامج المصغر، فلا يمكن إنشاء DOM عبر JS)

قيود برنامج WeChat المصغر المحددة والبدائل ​

القيدالبديل
لا يدعم وسم <svg>تُحوَّل الأيقونات في وقت البناء إلى خط iconfont (مضمّن base64)، ويُعرَض عبر <text class="lh-iconfont">
لا يدعم ::placeholderprop الخاص بـ input: placeholder-style / placeholder-class
لا يدعم محدّد * العام / محدّدات السمات / :not() / :nth-*تنقية وقت البناء: يُحوَّل محدّد * العام إلى flex + gap، ويُستبدل الباقي بأصناف مكافئة
لا يوجد document / document.bodyطبقات الحوار عبر root-portal؛ والخدمات الحتمية عبر نمط نقطة التركيب
لا توجد دلالة لتركيز لوحة المفاتيحلا يُستدعى focus-trap / تنقل لوحة المفاتيح بسبب حراسة LH_IS_H5؛ مع ذلك تُخرَج سمات aria لقارئات الشاشة
transitionend غير موثوقتُحاذاة مدة حركات الدخول والخروج عبر CSS transition + setTimeout
عدم اكتمال إنشاء المكوّنات في مرحلة onLoadيجب أن تكون كل استدعاءات ref / القياس بعد onReady

إصدار المكتبة الأساسية لـ WeChat ​

  • يتطلب root-portal مكتبة أساسية ≥ 2.25.2 (يعتمد عليه تركيب طبقات الحوار في select / dialog / tooltip).
  • تتخفّض الإصدارات الأقدم تلقائيًا إلى تموضع fixed داخل الصفحة كحل احتياطي (يُحكَم عليه عبر getLhLibVersion())، وتبقى طبقة الحوار موجودة، لكنها تخضع لتدفق الصفحة في الترتيب الطبقي.

root-portal والمنصات مثل DingTalk ​

يُقسَّم lh-root-portal داخليًا إلى ثلاثة فروع عبر الترجمة الشرطية: يستخدم H5 العنصر <teleport to="body">، ويستخدم WeChat <root-portal>، أما المنصات التي لا تدعم root-portal مثل DingTalk فتستخدم تموضعًا ثابتًا داخل الصفحة. هذا مكوّن داخلي لا يحتاج المستخدم إلى الاهتمام به، وذُكر هنا لتوضيح مصدر الفروق في سلوك طبقات الحوار بين المنصات.