Desidero distribuire il mio codice come funzioni anonime autoinvitanti, come vedo fare molti. Inoltre, nel mio codice devo monitorare per un altro caricamento della lib, quindi posso usarlo quando è disponibile.setTimeout() sulla funzione ricorsiva all'interno di una funzione autoinvitante
(function(window, document, undefined) {
staffHappens();
var initMyLib = function() {
if (typeof(myLib) == 'undefined') {
setTimeout("initMyLib()", 50);
} else {
useMyLib();
}
}
moreStaffHappens();
initMyLib(); //-> initMyLib is undefined
})(this, document);
Come si può verificare questo errore? InitMyLib dovrebbe essere incluso nell'ambito della funzione di inclusione (autoinviante)?
che non dovrebbe effettuare il luogo in cui è 'undefined' però ... – Ktash
@kTash, non non dovrebbe, ma sei sicuro che la parte' undefined' proviene da quella linea e non un esecuzione del script di timeout? –
Non lo so. Questa è la frase che ha affermato che accade, quindi immagino che abbia fatto il debug per capire molto ... Questa è stata la prima cosa che ho pensato, ma se si verifica alla riga specificata e non nel timeout, allora non sono sicuro che sia giusto Stavo semplicemente pensando ad alta voce – Ktash