【问题标题】:Why vscode is importing packages from typescript cache为什么 vscode 从打字稿缓存中导入包
【发布时间】:2018-07-06 22:24:15
【问题描述】:

我已经启动了一个使用 cli 生成的 react-native 项目。该应用程序似乎运行良好,但我注意到导入指向打字稿缓存而不是本地 node_modules。我什至没有使用打字稿。

IDE:vscode 1.19.3

import React, { Component } from 'react';

模块 "/Users/MyMac/Library/Caches/typescript/2.6/node_modules/@types/react/index"

【问题讨论】:

  • @types 是 typescript 定义包的集合,而不是实际的库本身。所以在你的情况下,它只是从这个目录加载 React 的类型定义。我猜 vscode 这样做是为了提供智能感知,即使你不使用 TypeScript。
  • 唯一的问题是它每次都会破坏我的应用程序......(react-native)......相对路径不起作用

标签: reactjs typescript react-native visual-studio-code


【解决方案1】:

这是 JavaScript 所期望的。这些@types 文件为诸如react 之类的npm 模块提供VS Code IntelliSense。 react 模块本身仍将从您本地的 node_modules 导入

有关更多详细信息,请参阅我们在 Automatic type acquisition 上的文档

【讨论】:

  • 这不是可能的误导吗?例如,如果恰好安装在 .../Caches/typescript/4.0/node_modules/@types/ 目录中,VS Code 不会显示未安装在模块中本地的包的导入错误?
猜你喜欢
  • 2020-10-31
  • 2016-05-21
  • 1970-01-01
  • 1970-01-01
  • 2022-11-10
  • 2020-04-19
  • 2023-02-09
  • 2016-11-01
  • 1970-01-01
相关资源
最近更新 更多