Skapa icke-anonyma AMD-moduler i TypeScript
Finns det ett sätt att skapa icke-anonyma AMD-moduler i Typescript. När jag definierar en modul på detta sätt:
export module Bootstrapper {
export function run() {
var i = 0;
}
}
den genererade koden är:
define(["require", "exports"], function(require, exports) {
(function (Bootstrapper) {
function run() {
var i = 0;
}
Bootstrapper.run = run;
})(exports.Bootstrapper || (exports.Bootstrapper = {}));
})
Hur kan jag definiera en icke-anonym modul som detta:
define('bootstrapper', ["require", "exports"], function(require, exports) {
(function (Bootstrapper) {
function run() {
var i = 0;
}
Bootstrapper.run = run;
})(exports.Bootstrapper || (exports.Bootstrapper = {}));
})
Svar #1
Denna funktion lades nyligen till i TypeScript master-gren via denna pullförfrågan. Att deklarera ett AMD-modulnamn görs med följande referenskommentar:
/// <amd-module name='MyModuleName'/>kommer att producera följande JavaScript:
define("MyModuleName", ["require", "exports"], function (require, exports) { ... }Svar #2
Som du kan se i filen emitter.ts på rad 1202 (sök efter " var dependencyList=") finns det ingen implementering för det.
Du kan öppna ett ärende på Codeplex om det.