تزيين CookedElement لكل تغيير في الصفحة؟

متابعة وربما سؤال غبي: أحاول تحميل عدة نصوص برمجية الآن، حيث تسمح Mediaelement بتحميل نصوص برمجية إضافية. أريد التأكد من تحميل جميع النصوص البرمجية قبل إرجاع الوعد.

لقد حاولت القيام بذلك عن طريق المرور عبر الثوابت لمصادر النصوص البرمجية ثم إنشاء مصفوفة من الوعود، ثم استخدام Promise.all() لتهيئة المشغلات، ومع ذلك عندما أفعل ذلك، أحصل على خطأ يقول إن mejs غير موجود، وهو ما أعتقد أنه مساحة الاسم أو شيء من هذا القبيل لاستدعاء وظائف مختلفة داخل mediaelement-and-player.

      let scripts_loaded = [];
      
      MEDIA_ELEMENT_SCRIPTS.forEach(function (src, index){
          scripts_loaded[index] = loadScript(src);
      });
      
      Promise.all(scripts_loaded).then(() => {
            audioplayers.forEach(function (el) {
              new MediaElementPlayer(el, MEDIA_ELEMENT_CONFIG);
            });
      });

ومع ذلك، إذا قمت بربطها يدويًا، يبدو أنها تعمل، على النحو التالي:

      loadScript(MEDIA_ELEMENT_SRC).then(() => {
          loadScript(MEDIA_ELEMENT_SPEED_SRC).then(() => {
            loadScript(MEDIA_ELEMENT_SKIP_BACK_SRC).then(() => {
                loadScript(MEDIA_ELEMENT_JUMP_FORWARD_SRC).then(() => {
                    audioplayers.forEach(function (el) {
                        new MediaElementPlayer(el, MEDIA_ELEMENT_CONFIG);
                    });
                });
            });
        });
      });

في هذه الحالة، أستخدم عددًا قليلاً فقط من النصوص البرمجية، لذلك قمت بكتابتها يدويًا، كنت أتساءل فقط عما إذا كنت أفوت شيئًا واضحًا حول وظيفة Promise.all()، أو إذا كانت هناك وظيفة Discourse تسمح لي بتحميل نصوص برمجية متعددة من مصفوفة.