ResizeObserver
لا يتضمن lib.dom.ts
إقرارات ResizeObserver API.
ResizeObserver هو شيء يحصل على بعض الدعم في 2018 ولم أجد أي ذكر حول ResizeObserver هنا.
اقتراحي يفي بهذه الإرشادات:
أعتقد أنه من المتعمد ألا تأتي تعريفات النوع القياسي مع واجهات برمجة التطبيقات التجريبية ، خاصةً إذا كان دعم المستعرض غير موجود تقريبًا.
نقوم بإنشاء lib على https://github.com/Microsoft/TSJS-lib-generator من ملفات IDL للويب المعيارية الآن. يحتوي هذا الملف على قائمة IDL التي ننشئ منها lib. بمجرد أن تصل الميزة ، على سبيل المثال ، whatwg common dom interfaces IDL ، سنقوم بمزامنتها ونحصل عليها. سيستغرق بعض الوقت (وربما دعمًا أفضل للمتصفح) حتى يحدث ذلك. أوصي فقط بإضافة الإعلانات الإضافية محليًا إلى مشروعك في هذه الأثناء ، لأنني لا أعتقد أننا سنأخذ العلاقات العامة لتجاوز شيء لا يزال قيد التجربة.
weswigham من الجيد معرفة! شكرا لك.
أوصي فقط بإضافة الإعلانات الإضافية محليًا إلى مشروعك في غضون ذلك
ما هو المكان الصحيح لوضع هذه التصريحات من منظور تنضيد؟ مع الأخذ بعين الاعتبار كود resize-Observer-polyfill
أي ملف في مشروعك سيفي بالغرض. كثير من الناس يوصون بـ globals.d.ts
منفصل أو ما شابه لأشياء من هذا القبيل.
weswigham على ما يبدو يجب إعادة النظر في هذه الأيام؟
تدعمه جميع المتصفحات الرئيسية مع وضع النموذج الدائم في الاعتبار: Firefox (68-69) و Safari (Tech Preview للتوافر في Safari التالي ليتم تشغيله جنبًا إلى جنب مع MacOS Catalina دون شك) و Chrome و Edge w / Chromium وما إلى ذلك.
هناك أيضًا بيانات CaniUse محدثة حول هذه المسألة الآن ، IIRC: https://caniuse.com/#search = ResizeObserver
تم وضع علامة "سؤال" على هذه المشكلة ولم تشهد أي نشاط حديثًا. تم إغلاقه تلقائيًا لأغراض التدبير المنزلي. إذا كنت لا تزال تنتظر ردًا ، فعادةً ما تكون الأسئلة أكثر ملاءمة لتدفق التراص .
يجب إعادة فتح هذا ؛ أنا من رأيي أن سبب إغلاقها مشكوك فيه.
فرضية عدم إضافة واجهة لـ ResizeObserver
API عفا عليها الزمن وتحتاج إلى تحديث.
/ cc weswigham
weswigham أي تحديث على هذا؟
weswigham MDN لم يعد يسرد واجهة برمجة التطبيقات هذه على أنها تجريبية. يتم حاليًا الحصول على "لا يمكن العثور على اسم 'ResizeObserver'" عند محاولة استخدام API مع TypeScript 3.7.2
يجب إعادة فتح هذه المشكلة لأنها لم تعد تجريبية وكل المتصفحات الرئيسية تدعمها.
وفقًا لـ MDN ، لا يزال هذا جزءًا فقط من مسودة المحرر ، ولا تدعمه جميع المتصفحات الرئيسية.
أتخيل أن ما يعيق الأشياء هو Safari الذي لن يدعمه حتى
2020 يجري على خارطة الطريق لعام 2020 ؛ دعم الحافة له مضمون
15 كانون الثاني (يناير) عندما يتم تعيين Edge Chromium على الإطلاق للجمهور مع ذلك
دعم ResizeObserver.
يوم الأربعاء 13 نوفمبر 2019 الساعة 1:00 صباحًا Martin Johns [email protected]
كتب:
وفقًا لـ MDN ، لا يزال هذا جزءًا فقط من مسودة المحرر ، وليس كلها
المتصفحات الرئيسية تدعمه.-
أنت تتلقى هذا لأنك علقت.
قم بالرد على هذا البريد الإلكتروني مباشرة ، وقم بعرضه على GitHub
https://github.com/microsoft/TypeScript/issues/28502؟email_source=notifications&email_token=AAJKUOAOKN35DZEYT26M6VLQTO6ZVA5CNFSM4GDOB24KYY3PNVWWK3TUL52HS4DFVREXG43VMVB5
أو إلغاء الاشتراك
https://github.com/notifications/unsubscribe-auth/AAJKUODKUSZ7BORN3AUGNKLQTO6ZVANCNFSM4GDOB24A
.>
كيفن لوزاندير
[email protected] [email protected]
أي تحديثات هنا؟
هذه واحدة من أكثر المشكلات غرابة التي واجهتها. لقد سمعت الكثير عن واجهة برمجة التطبيقات هذه في العام الماضي حتى تكون غير مألوفة من خلال الكتابة المطبوعة
تقريبًا 80٪ https://caniuse.com/#search = ResizeObserver
حان الوقت لإضافته ، لقد تم شحنه إلى Safari الشهر الماضي. هذا يعني حرفيًا أن جميع المتصفحات تدعمه.
فوق
weswigham ، أنشئ مشكلة https://github.com/microsoft/TSJS-lib-generator/issues/908
بينما لم يتم دمج الكتابة في الكتابة المطبوعة حتى الآن ، يمكنك استخدام حزمة من npm مع كتابة ResizeObserver: https://www.npmjs.com/package/@types/resize -observer-browser
للإضافة إلى ردdenexapp :
1) قم بتثبيت https://www.npmjs.com/package/@types/resize-observer-browser
2) /// <reference types="resize-observer-browser" />
أعلى الملف حيث تريد استخدامه.
التعليق الأكثر فائدة
حان الوقت لإضافته ، لقد تم شحنه إلى Safari الشهر الماضي. هذا يعني حرفيًا أن جميع المتصفحات تدعمه.