Тому я думаю, що я знайшов обхідний шлях. Просто оберніть ключове слово 'module' у дужках у вашому .ts-файлі:
declare var module: any;
(module).exports = MyClass;
Створений файл javascript буде абсолютно однаковим:
(module).exports = MyClass;
Зауважте, що краще, ніж самостійно оголошувати модуль var, завантажте файл визначення node.d.ts та вставте його в ту ж директорію, що і файл TypeScript . Ось повний зразок експрес-файлу маршрутизації node.js, який передбачає, що node.d.ts знаходиться в тому ж каталозі:
var SheetController = function () {
this.view = function (req, res) {
res.render('view-sheet');
};
};
(module).exports = SheetController;
Потім я можу створити SheetController і (використовуючи експрес) призначити метод перегляду:
var sheetController = new SheetController();
app.get('/sheet/view', sheetController.view);
Я вважаю, що будь-яке ключове слово можна уникнути, використовуючи такий шаблон:
declare var reservedkeyword: any;
(reservedkeyword).anything = something;