Машинопись. Объявление модуля в пакете npm не работает

Я использую машинописный текст Vue.js +. У меня есть проект "A", в котором я использую частный пакет npm "B" (это библиотека компонентов), в котором я использую другой пакет - библиотеку "tiptap". По умолчанию у него нет типов, поэтому я написал свой файл shims.d.ts в проекте "A", где объявил модуль 'tiptap'

declare module 'tiptap' { //... }

Работает нормально. Но когда я перемещаю этот файл в пакет B, TypScript их не видит и вызывает ошибку, что нет типов. Посмотрите папку пакета B

Не удалось найти файл декларации для модуля tiptap. "C:/some_path/tiptap/dist/tiptap.common.js" неявно имеет тип "любой".

Что я делаю неправильно?

1 ответ

Похоже, у вас есть копии файла shims.d.tsв обоих проектах "А" и "Б"? И проблема в том, что при компиляции "B" определения типов для tiptap не обнаруживаются?

Распространенная проблема - расположение .d.tsфайл. Он должен находиться в каталоге, в котором TypeScript будет искать исходные файлы. Проверить"include" а также "exclude" настройки в вашем tsconfig.json если у вас установлены эти параметры, и убедитесь, что shims.d.ts находится в одном из включенных каталогов и не соответствует ни одному из шаблонов исключения.

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