Вы должны понимать, что TypeScript не является отдельным языком программирования. Он поставляется поверх JavaScript как надмножество (что означает, что после написания и компиляции программы TypeScript она, по сути, является программой JavaScript). Вы можете легко попытаться написать эквивалентный код JavaScript, если хотите добиться цели. Если вы пойдете на площадку TypeScript, вы действительно сможете быстро перенести код TS в код JS (если, конечно, не слишком сложный).
Как бы то ни было, немного освежите в памяти то, как вы можете достичь того, что вы просили:
var success = function () {
alert("JS method called");
typescriptMethod();
};
var MainClass = /** @class */ (function () {
function MainClass() {
success();
}
MainClass.prototype.typescriptmethod = function () {
alert("typescript method called");
};
return MainClass;
}());
Это приведет к ошибке, что typescripmethod () не определен, поэтому вы можете сделать его статическим (код JS):
var MainClass = /** @class */ (function () {
function MainClass() {
success(); // JS method called
}
MainClass.typescriptMethod = function () {
alert("typescript method called");
};
return MainClass;
}());
var success = function () {
alert("JS method called"); // alert displayed
MainClass.typescriptMethod(); // Defined in class of typescript
};
success();
Или используйте экземпляр класса (код JS):
var MainClass = /** @class */ (function () {
function MainClass() {
success(this); // JS method called
}
MainClass.prototype.typescriptMethod = function () {
alert("typescript method called");
};
return MainClass;
}());
var success = function (instance) {
alert("JS method called"); // alert displayed
instance.typescriptMethod(); // Defined in class of typescript
};
success(new MainClass());
Надеюсь, это поможет вам.