Teamescript Compile Modules AMD с обязательными определяет

StackOverflow https://stackoverflow.com//questions/12706167

  •  13-12-2019
  •  | 
  •  

Вопрос

в AMD (как реализован в Enternals), можно определить модули, которые будут включены в качестве зависимостей, например:

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

  // Use the module somewhere.
});
.

Я попробовал - Module AMD, и он правильно выводит модуль AMD, используемый по требованию.

Возможно ли определить зависимости внутри источника исходного файла TypeScript, который переводится на что-то вроде примера выше?

Это было полезно?

Решение

Вам нужно «экспортировать» ваши модули;

export module depModule { 
    export class A { 
    }
}
.

Это будет трансналат в код JavaScript, который выглядит как:

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

, а затем вы потребляете их с помощью «импорта»:

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

Вам нужно будет указать тип генерации кода вашего модуля к компилятору, используя --module amd.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top