الوصف
استخدِم واجهة برمجة التطبيقات chrome.devtools.recorder لتخصيص لوحة "المسجّلة الذكية" في "أدوات مطوري البرامج".
مدى التوفّر
يمكنك الاطّلاع على ملخص واجهات برمجة التطبيقات في "أدوات مطوّري البرامج" للاطّلاع على مقدمة عامة عن استخدام واجهات برمجة التطبيقات الخاصة بأدوات المطوّرين.
نظرة عامة
devtools.recorder API هي ميزة معاينة تتيح لك توسيع لوحة "المسجّلة الذكية" في "أدوات مطوري البرامج في Chrome".
بدءًا من الإصدار M105 من Chrome، يمكنك توسيع نطاق وظيفة التصدير. بدءًا من الإصدار M112 من Chrome، يمكنك تمديد زر إعادة التشغيل.
تخصيص ميزة التصدير
لتسجيل مكوّن إضافي للإضافة، استخدِم الدالة registerRecorderExtensionPlugin. تتطلّب هذه الدالة وجود مثيل مكوّن إضافي، أي name وmediaType كمَعلمتَين. يجب أن ينفذ مثيل المكوّن الإضافي طريقتين: stringify وstringifyStep.
يظهر name الذي توفّره الإضافة في القائمة تصدير في لوحة المسجّلة الذكية.
بناءً على سياق التصدير، عندما ينقر المستخدم على خيار التصدير الذي توفِّره الإضافة، تستدعي لوحة المسجّلة إحدى الوظيفتين:
stringifyالتي تتلقّى تسجيلاً كاملاً لتدفق المستخدمstringifyStepالذي يتلقّى خطوة واحدة مسجّلة
تسمح المَعلمة mediaType للإضافة بتحديد نوع المخرجات التي تنشئها باستخدام
الدالتان stringify وstringifyStep. على سبيل المثال، application/javascript إذا كانت النتيجة هي JavaScript
البرنامج.
مثال على المكوّن الإضافي لتصدير
ينفذ الرمز البرمجي التالي مكوّنًا إضافيًا للإضافة يؤدي إلى إنشاء سلسلة لتسجيل باستخدام JSON.stringify:
class MyPlugin {
stringify(recording) {
return Promise.resolve(JSON.stringify(recording));
}
stringifyStep(step) {
return Promise.resolve(JSON.stringify(step));
}
}
chrome.devtools.recorder.registerRecorderExtensionPlugin(
new MyPlugin(),
/*name=*/'MyPlugin',
/*mediaType=*/'application/json'
);
تخصيص زر إعادة التشغيل
لتخصيص زر إعادة التشغيل في المسجّلة الذكية، استخدِم الوظيفة registerRecorderExtensionPlugin. ويجب أن ينفِّذ المكوّن الإضافي طريقة replay لكي يتم تطبيق التخصيص.
إذا تم رصد الطريقة، سيظهر زر إعادة التشغيل في المسجّلة الذكية.
بعد النقر على الزر، سيتم تمرير كائن التسجيل الحالي كوسيطة أولى إلى طريقة replay.
في هذه المرحلة، يمكن أن تعرض الإضافة RecorderView للتعامل مع إعادة التشغيل أو استخدام واجهات برمجة تطبيقات إضافات أخرى لمعالجة طلب إعادة التشغيل. لإنشاء RecorderView جديد، استدعِ chrome.devtools.recorder.createView.
مثال على إعادة تشغيل المكون الإضافي
ينفذ الرمز البرمجي التالي مكوّنًا إضافيًا للإضافة ينشئ عرضًا وهميًا للمسجّلة الذكية ويعرضه عند طلب إعادة التشغيل:
const view = await chrome.devtools.recorder.createView(
/* name= */ 'ExtensionName',
/* pagePath= */ 'Replay.html'
);
let latestRecording;
view.onShown.addListener(() => {
// Recorder has shown the view. Send additional data to the view if needed.
chrome.runtime.sendMessage(JSON.stringify(latestRecording));
});
view.onHidden.addListener(() => {
// Recorder has hidden the view.
});
export class RecorderPlugin {
replay(recording) {
// Share the data with the view.
latestRecording = recording;
// Request to show the view.
view.show();
}
}
chrome.devtools.recorder.registerRecorderExtensionPlugin(
new RecorderPlugin(),
/* name=*/ 'CoffeeTest'
);
يمكنك العثور على مثال كامل للإضافة على GitHub.
الأنواع
RecorderExtensionPlugin
واجهة مكوِّن إضافي تستدعيها لوحة "المسجّلة الذكية" لتخصيص لوحة "المسجّلة الذكية"
أماكن إقامة
-
إعادة التشغيل
فراغ
الإصدار 112 من Chrome أو الإصدارات الأحدثيسمح هذا الإذن للإضافة بتنفيذ وظيفة إعادة تشغيل مخصّصة.
تبدو دالة
replayكما يلي:(recording: object) => {...}
-
تسجيل
كائن
تسجيل لتفاعل المستخدم مع الصفحة يجب أن يتطابق هذا الاسم مع مخطّط تسجيل Puppeteer.
-
-
تحويل النص إلى سلسلة
فراغ
تحوِّل هذه الميزة تسجيلاً من تنسيق لوحة "المسجّلة الذكية" إلى سلسلة.
تبدو دالة
stringifyكما يلي:(recording: object) => {...}
-
تسجيل
كائن
تسجيل لتفاعل المستخدم مع الصفحة يجب أن يتطابق هذا الاسم مع مخطّط تسجيل Puppeteer.
-
-
stringifyStep
فراغ
تحوّل خطوة التسجيل من تنسيق لوحة "المسجّلة الذكية" إلى سلسلة.
تبدو دالة
stringifyStepكما يلي:(step: object) => {...}
-
خطوة
كائن
خطوة من تسجيل تفاعل المستخدِم مع الصفحة. يجب أن يتطابق هذا مع مخطّط خطوات Puppeteer.
-
RecorderView
تمثل طريقة العرض التي تم إنشاؤها بواسطة الإضافة ليتم تضمينها داخل لوحة "المسجّلة الذكية".
أماكن إقامة
-
onHidden
الحدث <functionuffful>
يتم الإطلاق عند إخفاء العرض.
تبدو دالة
onHidden.addListenerكما يلي:(callback: function) => {...}
-
رد الاتصال
دالة
تظهر المَعلمة
callbackعلى النحو التالي:() => void
-
-
onShown
الحدث <functionuffful>
يتم الإطلاق عند إظهار العرض.
تبدو دالة
onShown.addListenerكما يلي:(callback: function) => {...}
-
رد الاتصال
دالة
تظهر المَعلمة
callbackعلى النحو التالي:() => void
-
-
إظهار
فراغ
تشير هذه العلامة إلى أنّ الإضافة تريد إظهار طريقة العرض هذه في لوحة "المسجّلة الذكية".
تبدو دالة
showكما يلي:() => {...}
الطُرق
createView()
chrome.devtools.recorder.createView(
title: string,
pagePath: string,
): RecorderView
إنشاء طريقة عرض يمكنها معالجة إعادة التشغيل سيتم تضمين طريقة العرض هذه داخل لوحة "المسجّلة الذكية".
المعلمات
-
title
سلسلة
العنوان الذي يتم عرضه بجانب رمز الإضافة في شريط أدوات "أدوات المطوّرين"
-
pagePath
سلسلة
مسار صفحة HTML في اللوحة بالنسبة إلى دليل الإضافات.
المرتجعات
registerRecorderExtensionPlugin()
chrome.devtools.recorder.registerRecorderExtensionPlugin(
plugin: RecorderExtensionPlugin,
name: string,
mediaType: string,
): void
تسجيل المكوّن الإضافي للإضافة "المسجّلة الذكية"
المعلمات
-
المكوّن الإضافي
مثيل ينفذ واجهة RecorderExtensionAccessin
-
الاسم
سلسلة
تمثّل هذه السمة اسم المكوِّن الإضافي.
-
mediaType
سلسلة
نوع الوسائط لمحتوى السلسلة الذي ينتجه المكوِّن الإضافي.