Teamescript Compile Modules AMD с обязательными определяет
-
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.
Не связан с StackOverflow