Как предотвратить установку (удаление) TypeScript и ссылаться на его собственные @types в AppData \ Local - PullRequest
0 голосов
/ 13 ноября 2018

Я сталкиваюсь с некоторой запутанной проблемой, когда кажется, что TypeScript устанавливает свою собственную копию React в свой глобальный кэш (не уверен, как он называется? (При условии, что это так)) и ссылаетсяэто в моем проекте.

В частности, я получаю две ссылки на React, расположенную в корне моего проекта

C:\MyProject\node_modules\@types\react

, а затем еще одну ссылку в

C:\Users\MyUserName\AppData\Local\Microsoft\TypeScript\3.0\node_modules\@types\react

Как управлять и удалять ссылки, которые попадают в папку TypeScript local?Что я могу делать в своем проекте, который может вызывать эту вторичную ссылку?

Вот как выглядит мой файл tsconfig.json:

{
  "compilerOptions": {
    "module": "commonjs",
    "moduleResolution": "node",

    "target": "es5",
    "sourceMap": true,
    "jsx": "react",
    "lib": [ "es6", "dom" ],
    "removeComments": true,
    "typeRoots": [
      "/Types/"
    ]
  },
  "compileOnSave": false,
  "exclude": [
    "/node_modules/",
    "/bin",
    "/obj"
  ]
}

1 Ответ

0 голосов
/ 13 ноября 2018

Функция загрузки объявлений типов в C:\Users\MyUserName\AppData\Local\Microsoft\TypeScript\3.0\node_modules называется "Автоматическое получение типов" и предназначена для проектов JavaScript. Поскольку в вашем проекте есть файл tsconfig.json, автоматическое получение типа должно быть неактивным, и любые ранее загруженные файлы не должны использоваться; если у вас есть доказательства того, что они используются и вызывают проблемы в вашем проекте, обновите вопрос. Предполагая, что вы используете код Visual Studio, вы можете отключить автоматическое получение типа, установив для параметра typescript.disableAutomaticTypeAcquisition значение true.

.
...