Ответ 1
Как вы можете видеть в файле emitter.ts в строке 1202 (выполнить поиск " var dependencyList = "
), для него нет реализации.
Вы можете открыть проблему с codeplex об этом.
Есть ли способ создания не анонимных модулей AMD в Typescript. Когда я определяю модуль следующим образом:
export module Bootstrapper {
export function run() {
var i = 0;
}
}
код генерации:
define(["require", "exports"], function(require, exports) {
(function (Bootstrapper) {
function run() {
var i = 0;
}
Bootstrapper.run = run;
})(exports.Bootstrapper || (exports.Bootstrapper = {}));
})
Как я могу определить не анонимный модуль следующим образом:
define('bootstrapper', ["require", "exports"], function(require, exports) {
(function (Bootstrapper) {
function run() {
var i = 0;
}
Bootstrapper.run = run;
})(exports.Bootstrapper || (exports.Bootstrapper = {}));
})
Как вы можете видеть в файле emitter.ts в строке 1202 (выполнить поиск " var dependencyList = "
), для него нет реализации.
Вы можете открыть проблему с codeplex об этом.
Эта функция недавно была добавлена в главный ветвь TypeScript через этот запрос на перенос. Объявление имени модуля AMD со следующим комментарием:
/// <amd-module name='MyModuleName'/>
создаст следующий JavaScript:
define("MyModuleName", ["require", "exports"], function (require, exports) { ... }
С TS 0.9.x нельзя назвать модуль AMD. Компилятор TS генерирует только оператор определения в формате
define( ['dep1', 'dep2', ..., 'depN'], function( __dep1__, __dep2__, ..., __depN__ ) {... } );
обсуждение форумов TS: https://typescript.codeplex.com/discussions/451454