如何防止(卸载)TypeScript安装并将其自身的@types引用到AppData \ Local中

时间:2018-11-13 14:48:30

标签: reactjs typescript npm types node-modules

我遇到了一个令人困惑的问题,似乎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 :(得分:1)

将类型声明下载到C:\Users\MyUserName\AppData\Local\Microsoft\TypeScript\3.0\node_modules的功能称为"Automatic Type Acquisition",适用于JavaScript项目。由于您的项目有一个tsconfig.json文件,因此“自动类型获取”应该处于非活动状态,并且不应使用任何以前下载的文件;如果您有证据表明它们正在被使用并导致您的项目出现问题,请更新问题。假设您使用的是Visual Studio Code,则可以通过将typescript.disableAutomaticTypeAcquisition设置为true来禁用自动类型获取。