Как избежать конфликта между библиотекарями "dom" и "webworker"?

Я использую TypeScript с React, и одной из целей, которую я хочу достичь, является фоновая синхронизация для автономной поддержки.

Чтобы включить наборы для сервисного работника, я должен включить lib "webworker", но он конфликтует с lib "dom". и выдаем такую ​​ошибку:

(25,1): Definitions of the following identifiers conflict with those in another file: 
EventListenerOrEventListenerObject, BlobPart, HeadersInit, BodyInit,
RequestInfo, DOMHighResTimeStamp, PerformanceEntryList, PushMessageDataInit,
VibratePattern, BufferSource, DOMTimeStamp, FormDataEntryValue, 
IDBValidKey, MessageEventSource, BinaryType, ClientTypes, 
IDBCursorDirection, IDBRequestReadyState, IDBTransactionMode, 
NotificationDirection, NotificationPermission, PushEncryptionKeyName, 
PushPermissionState, ReferrerPolicy, RequestCache, RequestCredentials, 
RequestDestination, RequestMode, RequestRedirect, ResponseType, 
ServiceWorkerState, ServiceWorkerUpdateViaCache, VisibilityState, 
WorkerType, XMLHttpRequestResponseType

Так что мне интересно, есть ли обходной путь, кроме ввода большинства моих аргументов any

Спасибо:-)

1 ответ

Вы можете разбить свой проект на несколько частей с отдельными tsconfig.json файлы: одна часть, которая включает в себя dom lib и одна часть, которая включает в себя webworker Lib. Вы можете сделать еще одну часть для общего кода, который не зависит ни от одной библиотеки. Вы можете использовать ссылки на проекты, чтобы помочь автоматизировать сборку. Если это не решит проблему полностью, обновите вопрос, чтобы описать остающиеся проблемы.

Другие вопросы по тегам