Una pregunta de seguimiento y quizás tonta: estoy intentando cargar varios scripts ahora, ya que Mediaelement permite scripts de complementos. Quiero asegurarme de que todos los scripts se carguen antes de devolver la promesa.
Lo he intentado haciendo un bucle a través de las constantes de las fuentes de scripts y luego creando una matriz de promesas, luego usando Promise.all() para inicializar los reproductores, y aun así, cuando lo hago, recibo un error que dice que mejs no se encuentra, que creo que es el espacio de nombres o algo para llamar a diferentes funciones dentro de 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);
});
});
Sin embargo, si los encadeno manualmente, parece funcionar, de la siguiente manera:
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);
});
});
});
});
});
En este caso, solo estoy usando un puñado de scripts, así que los escribí manualmente, solo tenía curiosidad si me estoy perdiendo algo obvio sobre la función Promise.all(), o si hay una función de Discourse que me permita cargar varios scripts desde una matriz.
