Ответ 1
Вы пытались использовать пустой массив для опции types
?
{
"compilerOptions": {
...,
"types": []
}
}
Это отключает автоматическое включение типов.
Смотрите документацию по TypeScript для более подробной информации.
Можно ли исключить глобальные типы в установленных зависимостях?
Я установил локальную зависимость. Это также скопировало папку node_modules этой зависимости. В этой папке node_modules хранятся установочные титры @types. Эти конфликты с типом @types, установленными для основного проекта.
Например. project-path/node_modules/local-dependency/node_modules/@types/react
конфликты с project-path/node_modules/@types/react
.
Можно ли заставить машинописный компилятор игнорировать типизацию в этой локальной зависимости?
Вы пытались использовать пустой массив для опции types
?
{
"compilerOptions": {
...,
"types": []
}
}
Это отключает автоматическое включение типов.
Смотрите документацию по TypeScript для более подробной информации.
Вы можете использовать свойства include
и exclude
в своем tsconfig.json для более тонкого контроля над файлами, которые включает в себя компилятор TypeScript:
http://www.typescriptlang.org/docs/handbook/tsconfig-json.html
Свойства
"include"
и"exclude"
"include"
список шаблонов файлов в виде глобуса. Поддерживаемые шаблоны glob:
- * соответствует нулю или больше символов (исключая разделители каталогов)
- ? соответствует любому символу (исключая разделители каталогов)
- **/рекурсивно соответствует любому подкаталогу
Поэтому, возможно, вы могли бы сделать что-то вроде:
{
...
"exclude": [
"node_modules"
]
}
Или, в зависимости от ваших потребностей, вы можете создать более целенаправленный шаблон glob, который исключает node_modules
каталог node_modules
из одной зависимости, дающий вам проблемы.
Если у вас есть контроль над модулем local-dependency
в вашем примере, лучшим решением будет обновление либо зависимости, либо вашего приложения, чтобы использовать ту же самую версию модуля @types/react
, удалить ваши модули npm и сделать свежие npm install
. Это должно позволить npm устанавливать единую, общую версию модуля, устраняя любую возможность конфликтов.