Я пытаюсь использовать TypeScript в части устаревшей системы JS. В этой системе существует множество приложений, которые выполняются в среде RequireJS, где main.js будет выполняться при запуске этого приложения. Я создал эту структуру
App1/
main.js
app.ts
Modules/
myModule.ts
Models/
model1.js
model2.js
Модели представляют собой сгенерированные коды и должны оставаться в виде файлов .JS. Модели должны запрашиваться операторами «Require» из разных модулей .ts.
Я знаю, как использовать что-то подобное в файле объявления в папке модулей, чтобы компилировать файлы .ts.
declare module "Models/model1" { var x:any; export = x;}
Но код не будет выполняться, потому что это создаст такое определение модуля AMD для myModule.ts.
define(["require","exports","Models/model1", function(require,exports,model){ ...
но путь разрешается Require.JS как
http://mysite/Models/model1.js
в котором отсутствуют разделы пути, потому что путь является относительным и должен быть абсолютным из корня контекста RequireJS. Я не могу иметь модели в качестве TS, потому что они являются сгенерированными файлами. Они не компилируются просто путем переименования в .ts, а неотносительные пути нельзя использовать из-за разных способов запуска приложения в жгутах, производственных и модульных тестах.
Вопрос. Есть ли способ заставить TypeScript генерировать относительные пути для модулей JavaScript (.js)?