Я пишу небольшую машинописную программу, которая требует загрузки модуля для работы в браузере, а не на сервере узлов. Я довольно новичок в TS и в результате прошу прощения за любые ошибки или отсутствие понимания.
У меня есть 4 модуля, которые необходимо загрузить во время выполнения, чтобы программа работала правильно, в моем файле Main.JS в папке моего сборщика, и они объявляются следующим образом:
Object.defineProperty(exports, "__esModule", { value: true });
var context_1 = require("./context");
var stratCommunity_1 = require("./stratCommunity");
var stratAggressive_1 = require("./stratAggressive");
var stratSemi_1 = require("./stratSemi");
Тем не менее, я получаю вышеуказанную ошибку.
Я попытался объявить модули следующим образом, что, как мне кажется, именно так и указано в документации.
define(function () {
return {
'context_1': './context',
'stratCommunity_1': './stratCommunity',
'stratAggressive_1': './stratAggressive',
'stratSemi_1': './stratSemi'
};
});
Я также пробовал это делать, пытаясь определить модули и передавая требуемую библиотеку.
define(function (require) {
return {
'context_1': require('./context'),
'stratCommunity_1': require('./stratCommunity'),
'stratAggressive_1': require('./stratAggressive'),
'stratSemi_1': require('./stratSemi')
};
});
Когда я пробую любое из этих решений, я получаю следующую ошибку.
"context_1 не определен"
Я сократил пример до минимального, обратите внимание, это скомпилированный файл JS.
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
define(function (require) {
return {
'context_1': require('./context'),
'stratAggressive_1': require('./stratAggressive')
};
});
var App = /** @class */ (function () {
function App() {
}
App.main = function () {
var context = new context_1.Context(new stratAggressive_1);
context.executeStrat('Clown', 'mad');
context.display();
};
return App;
}());
App.main();
В этом урезанном примере я все еще получаю, что context_1 не определен.
Я заметил, что когда я компилирую свой TSC, все мои имена переменных добавляются к ним "_1", и я предположил, что это было частью поведения компиляции.
Любая обратная связь очень ценится, поскольку я также передал ее старшим лекторам, которые сказали мне, чтобы они копировали их рабочее решение, которое я считаю бессмысленным.