رفتن به محتوا

مهاجرت موقعیت‌دهی لایه‌ها

Simurgh برای overlayهای رایج، موقعیت‌دهی کوچک و داخلی خود را دارد. هنگام جایگزینی یک کتابخانهٔ عمومی positioning، فقط قابلیت‌هایی را منتقل کنید که در قرارداد Simurgh پشتیبانی می‌شوند.

لایهٔ داخلی placementهای اصلی، offset، flip به سمت مقابل، جلوگیری از خروج از viewport، به‌روزرسانی در resize/scroll و مالکیت منطقی overlayهای تو‌در‌تو را پوشش می‌دهد.

بخشرفتار مهاجرت
مرز برخوردvisual viewport مرز collision است؛ مرز سفارشی element پشتیبانی نمی‌شود
middlewarearrow positioning، virtual anchor، hide/size middleware و زنجیرهٔ پردازش دلخواه وجود ندارند
fallbackplacement فقط می‌تواند به سمت مقابل flip شود
portalReact و Vue محتوای portalled را نسبت به body موقعیت می‌دهند؛ محتوای Angular در host باقی می‌ماند
render اولیهمحتوا در SSR و نخستین hydration بسته و قطعی می‌ماند؛ اندازه‌گیری پس از mount و بازشدن آغاز می‌شود
dismiss تو‌در‌توEscape ابتدا فرزند را می‌بندد و parent باز می‌ماند

پس از مهاجرت همهٔ overlayها، importها، adapterها و dependency قدیمی positioning را حذف کنید. lockfile و ابزار تحلیل بسته را بررسی کنید تا نسخهٔ غیرمستقیم یا کد تکراری باقی نمانده باشد.

اندازه‌گیری gzip مرجع پس از جایگزینی لایهٔ قبلی:

Adapterمیانگین پیش از مهاجرتمیانگین پس از مهاجرتکاهش
React11,424 B2,548 B77.7%
Vue5,242 B2,140 B59.2%
Angular5,513 B2,591 B53.0%

placement و flip را کنار تمام لبه‌های viewport، در zoom و RTL آزمایش کنید. سپس scroll، resize، trigger حذف‌شده، overlay تو‌در‌تو، Escape، outside press و بازگشت focus را کنترل کنید. SSR باید بدون اختلاف hydration باشد.

Last verified on 2026-08-13 against Simurgh registry 0.1.1.