我遇到了一个令人困惑的问题,似乎 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/