الأخبار التكنولوجية والاستعراضات والنصائح!

كيفية استبعاد JS Module المخصص من تصغير JS في Magento 2

ستساعدك المقالة التالية: كيفية استبعاد JS Module المخصص من تصغير JS في Magento 2

يؤدي تصغير JavaScript في Magento 2 إلى حذف المكونات الفردية مثل المسافات أو الرموز من ملفات JS لتقليل حجم الشفرة وتحسين وقت تحميل موقع الويب. لتصغير JavaScript من Magento 2 الخلفية ، انتقل إلى المتاجر> التكوين> متقدم> المطور عندما يكون وضع المطور قيد التشغيل.

Note: إذا كان المتجر في وضع الإنتاج ، فلن يكون الخيار أعلاه مرئيًا.

عند تشغيل “Minify JavaScript Files” ، يضيف Magento 2 .min إلى البرنامج النصي.

ملفات جافا سكريبت المصغرة

الفائدة الأساسية من تصغير Js هي تقليل عدد الأحرف في الكود ، وبالتالي حجم الملف الناتج. كلما كان الملف أصغر ، زادت سرعة تنزيله ومعالجته ، وبالتالي ، يحسن وقت تحميل الصفحة.

الآن ، عندما يكون تصغير Javascript قيد التشغيل من الواجهة الخلفية ، فإنه يصغر الوحدة المخصصة بالإضافة إلى ملفات Js للجهات الخارجية أيضًا. الذي يضيف ملف .min لملفات الوحدة النمطية المخصصة وعلى هذا النحو لا يتوفر هذا الملف في خادم واجهة برمجة تطبيقات الطرف الثالث ، فإنه يلقي بخطأ 404.

خطأ جافا سكريبت مصغر من جهة خارجية

لاستبعاد الوحدة النمطية المخصصة JS من Minification of Js في Magento 2 ، استخدم الحل أدناه.

خطوات استبعاد Js Module المخصص من تصغير JS في Magento 2:

  1. يخلق di.xml ملف في البائع / الامتداد / الخ الدليل

    <؟ xml version = "1.0"؟> <اسم المكون الإضافي =" my-استبعاد-Extension "type =" Vendor \ Extension \ Plugin \ ExcludeFilesFromMinification "/>

    <؟ xml version = "1.0"؟>

    <اسم المكون الإضافي = "my-استبعاد-Extension" type = "Vendor \ Extension \ Plugin \ ExcludeFilesFromMinification" />

  2. إنشاء ملف استبعاد FileFromMinification.php في البائع / الامتداد / البرنامج المساعد الدليل

    <؟ php namespace Vendor \ Extension \ Plugin؛ استخدام Magento \ Framework \ View \ Asset \ Minification ؛ class ExcludeFilesFromMinification {public function aroundGetExcludes (Minification $ subject، callable $ continue، $ contentType) {$ result = $ continue ($ contentType)؛ if ($ contentType! = 'js') {return $ result؛ } نتيجة دولار[] = 'مسار ملفك' ؛ // على سبيل المثال https://www.google.com/recaptcha/api.js 'return $ result؛ }}

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    <؟ php

    مورد مساحة الاسم \ ملحق \ البرنامج المساعد ؛

    استخدام Magento \ Framework \ View \ Asset \ Minification ؛

    فئة ExcludeFilesFromMinification

    {

    الوظيفة العامة حول GetExcludes (Minification $ subject، callable $ continue، $ contentType)

    {

    نتيجة $ = المتابعة ($ contentType) ؛

    إذا ($ contentType! = ‘js’) {

    إرجاع نتيجة $؛

    }

    نتيجة $[] = ‘مسار ملفك’ ؛ // على سبيل المثال https://www.google.com/recaptcha/api.js ‘

    إرجاع نتيجة $؛

    }

    }

هذا كل شيء عن استبعاد ملفات js من جهات خارجية من التصغير. بعد تنفيذ الكود أعلاه ، سيتم استبعاد ملفات js للوحدة المخصصة من التصغير ولن تحصل بعد الآن على خطأ 404 لملفات js.

لأي وحدة مخصصة أو ملفات JavaScript لجهات خارجية قمت بتنفيذ الحل أعلاه؟ لا تنس مشاركة استفساراتك واقتراحاتك في قسم التعليقات أدناه. شارك المقال مع زملائك في Magento إذا كنت تحب الحل.