Ho il mio script di inizializzazione principale che chiama require() e una delle dipendenze è un framework di utilità, ma alcuni degli altri moduli che sto specificando tramite require (anche loro stessi hanno definito questo quadro come una dipendenza.Come AMD (in particolare RequireJs) gestisce le dipendenze su più moduli
Per esempio (Init.js):
require(['module-a', 'module-b', 'module-c'], function(a, b, c){
// where module-c is the framework
});
e poi in 'modulo-a' ho:
define(['module-c'], function(c){
// utilize module-c framework
});
Così come si fa AMD/RequireJs gestire questo scenario, vuol caricare lo stesso schema due volte?
Qualsiasi aiuto apprezzato.
saluti, Mark
Molte grazie per la conferma! Questo è esattamente quello che speravo sarebbe successo perché nella mia mente specificare la dipendenza all'interno di ogni modulo aveva più senso in quanto significava che sarei stato in grado di prendere quel modulo e riutilizzarlo altrove in un altro progetto completamente diverso. – Integralist
Internamente, il caricatore AMD tiene traccia di (cioè memorizza le cache) tutti i moduli.Quando i moduli sono ottimizzati/concatenati insieme, questo non è interessante. Tuttavia, se uno qualsiasi dei moduli viene caricato just-in-time, è importante notare che il caricatore AMD tiene traccia di _requests_ in modo che due richieste quasi simultanee non tentino di scaricare lo stesso modulo più di una volta. – unscriptable