Я работаю над настройкой контекстных меню в проекте JavaScripot + TypeScript + AMD (с использованием компонентов DevExtreme). Часть сложности заключается в том, что я не использую стандартный способ main. js и вместо этого требую, чтобы сценарий js загружался и настраивался из index. html. index. html имеет js функций для загрузки модулей TS по запросу, которые работают нормально, за исключением одного случая, показанного здесь?:
function OnPopupMenuShowing(sender, eventArgs) {
require(['AppScripts/context-provider'], function (mod) {
var context = mod.ContextProvider.getContext();
// custom menus must be loaded here & before control leaves this function
});
}
Как следует из названия, эта функция вызывается перед отображением всплывающего меню ( при щелчке правой кнопкой мыши), а пользовательские меню вводятся в данные до того, как меню будут отображаться. Проблема в том, что require js загружает контекст (модуль TS) асинхронно, и меню отображаются до того, как контекст становится доступным, поэтому пользовательские меню не попадают в поезд.
Как можно асинхронно загрузить модуль TS, используя require js? Или что-то вроде, загрузить модуль TS с загрузкой страницы и сделать его глобальным?
этот ответ описывает способ определения модуля для asyn c загрузки, но мой модуль создается TS, поэтому я могу Не могу контролировать определенную часть. Или можно что-нибудь сделать на TypeScript?