Включение объектов DOM в скомпилированный Typescript - PullRequest
0 голосов
/ 05 июля 2019

Мне нужно перенести несколько файлов .ts в файл .js, однако мне нужно представить объект window (или вам понравившееся свойство), так как у меня есть функция, которая выглядит как-токак следует:

(function(window, undefined){ /**... stuff ...*/})(window); 

Используя машинопись 2.7.1, я пробовал это:

  • Пройдя через опции компилятора tsconfig, добавив обычный

    "compilerOptions": {
        "typeRoots": [
            "path/to/node/modules/node_modules/typescript/lib/lib.d.ts"
        ],
        "lib": ["es5", "es6", "dom"]
     }
    

Что не сработало, я в отчаянии подумал, что я просто добавлю файл dom.d.ts среди скомпилированных файлов:

    "files": [
            "path/to/node/modules/node_modules/typescript/lib/lib.d.ts",
    ]

Что, похоже, работает, новыглядит очень хаки

Моя проблема в том, что я не совсем уверен, как правильно выполнять компиляцию tsconfig, я полагал, что она должна пройти через lib .

PS : Я должен упомянуть, что вызов объекта окна осуществляется через стороннюю библиотеку (AngularJS), я понимаю, что она должна проходить через @types, но база кода, которую я обрабатываю, в конечном итоге использовала код определенным образом (который я не могу изменить).

...