У меня проблемы с импортом объявленной глобальной переменной.
На нашем веб-сайте есть сторонний фреймворк, который интегрируется только с использованием тега и создает глобальную переменную в окне, например window.thirdParty
.Таким образом, использование выглядит так: thirdParty.methodOne()
Я написал файл определения Third-Party.d.ts, который выглядит следующим образом:
import { ITrirdPartyFramework } from './third-party-definitions/third-party-framework';
export interface ITrirdPartyFramework {
methodOne():void,
}
тогда у меня есть файл (global-variables.ts), который определяет глобальные переменные:
export declare const thirdParty: ITrirdPartyFramework;
и, наконец, я хочу использовать его в своих модулях:
import { thirdParty } from './global-variables';
export const myFunction = () => {
thirdParty.methodOne();
}
Проблема в том, что webpack компилирует определения как обычные модули, и во время выполнения я получаю ошибку, потому что скомпилированный кодвыглядит так:
_global_variables__WEBPACK_IMPORTED_MODULE_3__["thirdParty"].methodOne();
вместо
thirdParty.methodOne();
Знаете ли вы, как заставить webpack игнорировать определения или как справиться с этой ситуацией?