Как загрузить модуль TypeScript / AMD асинхронно с помощью requireJS - PullRequest
0 голосов
/ 27 мая 2020

Я работаю над настройкой контекстных меню в проекте 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?

...