Существует простой пакет TS, который используется как модули CommonJS и не имеет экспорта. Файлы TS скомпилированы в файлы JS с тем же именем и используются как require('package/option-foo')
.
tsconfig.json:
{
"compilerOptions": {
"target": "es5"
}
}
опционные-foo.ts:
declare const GlobalVar: any;
function baz() {}
if (GlobalVar.foo) GlobalVar.baz = baz;
опционные-bar.ts:
declare const GlobalVar: any;
function baz() {}
if (GlobalVar.bar) GlobalVar.baz = baz;
Важная часть здесь состоит в том, что option-foo
и option-bar
никогда не используются вместе. В проекте есть другие бесплатные TS файлы, но они ничего не влияют, просто нужно перевести на JS за один запуск tsc
.
Когда tsc
запускается, он бросает
Невозможно переопределить переменную с диапазоном "GlobalVar".
Реализация повторяющейся функции.
Невозможно переопределить переменную с диапазоном "GlobalVar".
Реализация повторяющейся функции.
для GlobalVar
и baz
в обоих файлах.
Как это можно обрабатывать без осложнения процесса сборки или вывода из этих двух файлов TS?