Un follow-up e forse una domanda stupida: sto cercando di caricare più script ora, poiché Mediaelement consente script plugin. Voglio assicurarmi che tutti gli script vengano caricati prima di restituire la promise.
Ho provato a farlo scorrendo le costanti delle sorgenti degli script e quindi creando un array di promise, quindi utilizzando Promise.all() per l’inizializzazione dei player, e tuttavia quando lo faccio, ricevo un errore che dice che mejs non viene trovato, che credo sia il namespace o qualcosa per chiamare diverse funzioni all’interno di 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);
});
});
Tuttavia, se li concateno manualmente, sembra funzionare, così:
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);
});
});
});
});
});
In questo caso, sto usando solo alcuni script, quindi li ho digitati tutti manualmente, ero solo curioso se mi manca qualcosa di ovvio sulla funzione Promise.all(), o se esiste una funzione Discourse che mi consente di caricare più script da un array.
