في الإصدار 74 من Chrome، أضفنا إمكانية استخدام ما يلي:
- أصبح الآن إنشاء حقول فئة خاصة في JavaScript أكثر وضوحًا.
- يمكنك رصد الحالات التي طلب فيها المستخدم استخدام ميزة تجربة الحركة المنخفضة.
- أحداث التحويل في CSS
- إضافة واجهات برمجة تطبيقات جديدة لسياسة الميزات للتحقّق مما إذا كانت الميزات مفعّلة أم لا
وهناك الكثير غير ذلك.
اسمي بيت ليبيه. لنطّلِع على الميزات الجديدة للمطوّرين في الإصدار 74 من Chrome.
سجلّ التغييرات
لا يتناول هذا المقال سوى بعض الميزات الرئيسية، ويمكنك الاطّلاع على الروابط أدناه للاطّلاع على التغييرات الإضافية في الإصدار 74 من Chrome.
- الميزات الجديدة في الإصدار 74 من "أدوات مطوّري البرامج في Chrome"
- الميزات التي سيتم إيقافها نهائيًا أو إزالتها في الإصدار 74 من Chrome
- تعديلات ChromeStatus.com على الإصدار 74 من Chrome
- الميزات الجديدة في JavaScript في Chrome 74
- قائمة التغييرات في مستودع مصدر Chromium
حقول الصفوف الخاصة
تعمل حقول الفئة على تبسيط بنية الفئة من خلال تجنُّب الحاجة إلى وظائف ملف الإنشاء فقط لتحديد خصائص المثيل. في الإصدار 72 من Chrome، أضفنا إمكانية استخدام حقول الفئات العامة.
class IncreasingCounter {
// Public class field
_publicValue = 0;
get value() {
return this._publicValue;
}
increment() {
this._publicValue++;
}
}
قلتُ إنّ حقول الصفوف الخاصة قيد التطوير. يسرّني أن أخبرك بأنّه تمت إضافة
حقول الفئات الخاصة في الإصدار 74 من Chrome. تشبه بنية الحقول الخاصة الجديدة
الحقول العامة، باستثناء أنّك تضع علامة على الحقل بأنّه خاص باستخدام
#
(علامة الباوند). يمكنك اعتبار الرمز #
جزءًا من اسم الحقل.
class IncreasingCounter {
// Private class field
#privateValue = 0;
get value() {
return this.#privateValue;
}
increment() {
this.#privateValue++;
}
}
تذكَّر أنّ حقول private
هي خاصة فقط. ويمكن الوصول إليها
داخل الصف، ولكن لا يمكن الوصول إليها خارج نص الصف.
class SimpleClass {
_iAmPublic = 'shared';
#iAmPrivate = 'secret';
doSomething() {
...
}
}
للاطّلاع على مزيد من المعلومات عن الفئات العامة والخاصة، يمكنك الاطّلاع على مشاركة "ماتياس" حول حقول الفئات.
prefers-reduced-motion
أبلغ بعض المستخدمين عن شعورهم بالغثيان عند عرض التمرير بزاوية متباينة والتكبير/التصغير وتأثيرات الحركة الأخرى. لحلّ هذه المشكلة، تقدّم العديد من أنظمة التشغيل خيارًا لتقليل الحركة كلما أمكن ذلك.
يقدّم Chrome الآن طلب بحث عن الوسائط، prefers-reduced-motion
، وهو جزء من
مواصفات المستوى 5 لطلبات البحث عن الوسائط، ويتيح لك هذا الطلب رصد الحالات التي يكون فيها
هذا الخيار مفعّلاً.
@media (prefers-reduced-motion: reduce)
لنفترض أنّني أمتلك زر اشتراك يجذب الانتباه إليه من خلال تحرّك بسيط. يتيح لي الطلب الجديد إيقاف ميزة "الاستجابة للحركة" للزر فقط.
button {
animation: vibrate 0.3s linear infinite both;
}
@media (prefers-reduced-motion: reduce) {
button {
animation: none;
}
}
اطّلِع على مقالة "توم" بعنوان Move Ya! أو ربما لا، إذا كان المستخدم يفضّل استخدام ميزة "الحركة المنخفضة". للحصول على مزيد من التفاصيل.
أحداث transition
في CSS
تتطلّب مواصفات انتقالات CSS إرسال أحداث الانتقال عند إضافة انتقال إلى "قائمة الانتظار" أو عند بدؤه أو انتهائه أو إلغائه. كانت هذه الأحداث متاحة في browsers الأخرى منذ فترة…
ولكن لم تكن هذه الميزة متاحة في Chrome حتى الآن. في الإصدار 74 من Chrome، يمكنك الآن الاستماع إلى ما يلي:
transitionrun
transitionstart
transitionend
transitioncancel
من خلال الاستماع إلى هذه الأحداث، من الممكن تتبُّع السلوك أو تغييره عند تنفيذ أحد الانتقالات.
تحديثات واجهة برمجة التطبيقات Feature policy API
تتيح لك سياسات الميزات تفعيل واجهات برمجة التطبيقات وميزات الويب الأخرى أو إيقافها أو تعديل سلوكها بشكل انتقائي. ويتم ذلك إما من خلال عنوان Feature-Policy أو من خلال سمة allow في إطار iframe.
Feature-Policy: geolocation 'self'
<iframe ... allow="geolocation self">
</iframe>
يقدّم الإصدار 74 من Chrome مجموعة جديدة من واجهات برمجة التطبيقات للتحقّق من الميزات المفعّلة:
- يمكنك الحصول على قائمة بالميزات المسموح بها باستخدام
document.featurePolicy.allowedFeatures()
. - يمكنك التحقّق مما إذا كانت ميزة معيّنة مسموحًا بها باستخدام
document.featurePolicy.allowsFeature(...)
. - ويمكنك الحصول على قائمة بالنطاقات المستخدَمة في الصفحة الحالية التي تسمح بأحد
الميزات المحدّدة باستخدام
document.featurePolicy.getAllowlistForFeature()
.
يمكنك الاطّلاع على مقالتنا التعريفية عن سياسة الميزات للحصول على مزيد من التفاصيل.
وغير ذلك
هذه ليست سوى بعض التغييرات في الإصدار 74 من Chrome المخصّص للمطوّرين، وبالطبع، هناك المزيد. أنا شخصيًا متحمّس جدًا بشأن KV Storage، وهي خدمة تخزين مفاتيح/قيم سريعة جدًا وغير متزامنة، وتتوفّر كإصدار تجريبي أصلي.
سينعقد مؤتمر Google I/O قريبًا.
يُرجى العِلم أنّ مؤتمر Google I/O سيُعقد بعد بضعة أسابيع (من 7 إلى 9 أيار (مايو))، وسنقدّم لك خلاله الكثير من الميزات الجديدة الرائعة. إذا لم تتمكّن من المشاركة، سيتم بث جميع الجلسات مباشرةً، وستكون متاحة بعد ذلك على قناة مطوّري Chrome على YouTube.
اشتراك
إذا أردت البقاء على اطّلاع على فيديوهاتنا، يمكنك الاشتراك في قناة مطوّري Chrome على YouTube، وستتلقّى إشعارًا عبر البريد الإلكتروني عند نشر فيديو جديد.
اسمي "بيت ليبيت"، وسأطلعك على الميزات الجديدة في Chrome فور طرح الإصدار 75.