Domanda

Sono abbastanza nuovo a utilizzare RequireJS e im avendo un problema con l'impostazione della configurazione globale per un modulo.

Sto usando contabilitàjs e voglio modificare l'impostazione a livello globale in questo caso voglio cambiare il simbolo da $ a £.

Senza RequireJS, faresti semplicemente qualcosa del genere come la contabilità sarebbe nello spazio dei nomi globali

accounting.settings = $.extend(accounting.settings, {
        currency: { symbol: '\u00A3 '}
    });
.

Contantijs è conforme AMD e funziona perfettamente con richiesta ma non riesco a capire un modo per passare la configurazione in esso globalmente piuttosto che.

Ho visto l'impostazione della configurazione in Ricontare documenti qui e posso impostare La configurazione qui ma contantijs non raccoglie questo (non è codificato!).

La mia domanda è come posso impostare la configurazione come questa per un modulo conforme AMD a livello globale all'interno della pagina?

Posso vedere alcune opzioni

    .
  • Modifica contabilitàJS per guardare Module.config () e caricare qualsiasi configurazione che vede - Ho provato questo e funziona come previsto ma non voglio davvero un usanza.
  • Utilizzare Shim Config e usa la richiamata init - non ho ottenuto questo per lavorare (forse perché è già conforme AMD)
  • Crea un nuovo modulo per avvolgere i contantijs in un altro definisci e applicare la configurazione qui e utilizzare questo modulo in ogni pagina - non prova questo, ma immagino che avrebbe funzionato ...

Quello che faccio davvero fare è avere un modo di applicare a livello globale Config a un modulo già esistente dalla configurazione Richiesta è possibile ??

È stato utile?

Soluzione

Se il modulo AMD non è progettato per utilizzare module.config, non è possibile forzarlo per usarlo.La soluzione che menziona l'ultimo è la più robusta: creare un modulo wrapper che configura il modulo effettivo come vuoi.Questo involucro può utilizzare module.config per afferrare i valori.Questa soluzione è probabile che funzioni con Restayjs ora e per un bel po 'di tempo da quando si utilizzano funzionalità di API che sono ben documentate e centrali per la funzionalità di Require.

Per quanto riguarda uno shim, non ricordo i documenti per RequireJs che fornisca mai una soluzione che consiste come utilizzando uno shim per un modulo già progettato per funzionare con i caricatori AMD.Quindi se usi uno shim ha funzionato, sarebbe per caso piuttosto che dal design.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top