Domanda

in AMD (come implementato in RequireJS) si possono definire moduli da includere come dipendenze, ad es.

define(['require','exports'], function(require, exports) {
  var externalDep = require('path/to/depModule');

  // Use the module somewhere.
});
.

Ho provato il --Module AMD e emette correttamente un modulo AMD utilizzabile da RequireJS.

È possibile definire le dipendenze all'interno della fonte del file sorgente dattiloscritto che si traduce in qualcosa come l'esempio sopra?

È stato utile?

Soluzione

è necessario "esportare" i tuoi moduli;

export module depModule { 
    export class A { 
    }
}
.

che transilarà il codice javascript che sembra:

define(["require", "exports"], function(require, exports) {
    (function (depModule) {
        var A = (function () {
            function A() { }
            return A;
        })();
        depModule.A = A;
    })(exports.depModule || (exports.depModule = {}));
})
.

e poi li consumi usando "import":

module otherModule { 
    import  depModule = module('depModule');
    var a = new depModule.depModule.A();
}
.

È necessario specificare il tipo della generazione del codice del modulo al compilatore usando --module AMD.

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