reactjs - 如何防止(卸载)TypeScript 安装并将它自己的 @types 引用到 AppData\Local

标签 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"
  ]
}

最佳答案

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

关于reactjs - 如何防止(卸载)TypeScript 安装并将它自己的 @types 引用到 AppData\Local,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53283595/

相关文章:

node.js - 保留导入包的目录结构

javascript - 异步并等待 Angular api响应

node.js - 运行 npm 脚本命令时覆盖 package.json 键

typescript - 依赖同一个公共(public)本地模块打包多个 Typescript 项目

javascript - 将 react-redux 与 ASP.NET Core 一起使用时在运行时出现未定义错误

javascript - 如何在不相关的组件之间共享数据? Angular 6

javascript - 如何在组件内使用 React 自定义环境变量

npm - 将 bulma 与 webpack 一起使用

javascript - 如何在每次输入更改时获取现有缓存数据?

javascript - GET 请求返回 index.html 文档而不是 json 数据