【发布时间】:2019-06-28 23:38:43
【问题描述】:
我正在使用 react (tsx)、react-table、react-i18next 和 @types。
当我运行 npm i 时,@types/react-table 和 @types/react-i18next 也会在其文件夹中安装 react typings 作为子文件夹。所以我最终在每个相关的@types 模块中都有多个@types/react 副本。结果,打字稿在尝试运行应用程序时抛出错误,当我删除 @types\react-table、@types\react-i18next 文件夹中的 node_modules 时,它编译得很好。
我正在使用 npm 6.5.0 和节点 8.15。 这种行为在我同事的计算机上有所不同(它们都在 Mac OS Mojave 上运行),它不会在上面列出的包上安装嵌套的 @types\react。
编辑: 将 @types 移动到 devDependencies,看起来这解决了它。
【问题讨论】:
-
尝试安装没有可选依赖项的第二个,使用以下附加参数
--no-optional -
@Atomzwieback 这个参数(--no-optional)没有保存在json包中,所以当我们进行npm install时,它仍然会尝试安装@types\react。
标签: node.js reactjs typescript npm