我有一个使用 Typescript 的项目,使用较新的 @types/foo 安装打字包的风格。
当我的构建服务器安装所有 npm 模块时,有时我在编译 typescript 时会完全失败,因为一些依赖定义不再匹配。
例如,我现在有一个关于@types/gulp 的问题。在它的 package.json
中,依赖项列为:
"dependencies": {
"@types/node": "*",
"@types/orchestrator": "*",
"@types/vinyl": "*"
},
但是现在 @types/orchestrator 已经更新,它现在打破了我在我的应用 package.json 中定义的 @types/gulp 的版本
。
我应该如何锁定这样的依赖项版本,这样我就不会再遇到这个问题,或者是否有其他解决方法?
不幸的是,我突然遇到这些问题,试图解决这些问题使开发工作推迟了数小时。这使得在快速变化的环境中使用 Typescript 变得困难。
最佳答案
How am I supposed to lock down version of dependencies like this so I no longer get this problem
运行 npm shrinkwrap
或只指定一个确切的版本:
"@types/vinyl": "6.3.12"
关于node.js - 更新定义文件时如何修复损坏的 Typescript 定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44763652/