node.js - 当定义文件更新时如何修复损坏的 TypeScript 定义
我有一个使用 Typescript 的项目,使用的是较新的 @types/foo 风格来安装类型定义包。
当我的构建服务器安装所有 npm 模块时,有时在编译 TypeScript 时会完全失败,因为某些依赖的定义不再匹配。
例如,我现在遇到了 @types/gulp 的问题。在 其 package.json 中,依赖项列为:
"dependencies": {
"@types/node": "*",
"@types/orchestrator": "*",
"@types/vinyl": "*"
},
但是现在 @types/orchestrator 已经更新了,并且它现在破坏了我在应用的 package.json 中定义的 @types/gulp 版本。
我应该如何锁定这种依赖项的版本,这样我就不会再遇到这个问题,或者有没有其他解决方法?
不幸的是,我突然遇到这些问题,这会让开发倒退几个小时来解决它们。这使得在快速发展的环境中使用 Typescript 变得困难。
答案#1
我应该如何锁定依赖版本,这样我就不再遇到这个问题
运行 npm shrinkwrap 或直接指定具体版本:
"@types/vinyl": "6.3.12"
