Avatar ·

如何正确放置 @types/* 包:在 dependencies 还是 devDependencies?

你好!我是 TypeScript 新手,正在尝试理解项目配置。我有一个基于 Express 的小应用,并为 express、node 和其他一些包安装了类型。 这是我的 package.json(部分): ```json { "dependencies": { "express": "^4.18.2", "@types/express": "^4.17.21", "@types/node": "^20.11.5", "lodash": "^4.17.21", "@types/lodash": "^4.17.0" }, "devDependencies": { "typescript": "^5.3.3", "ts-node": "^10.9.2", "@types/jest": "^29.5.11" } } ``` 我注意到在一些项目中,@types/* 包被放在 devDependencies 中,而在其他项目中则放在 dependencies 中。例如,我把 @types/express 放在 dependencies 中,因为它对 express 本身的运行是必需的。而 @types/jest 放在 devDependencies 中,因为 jest 仅用于测试。 但后来我读到,TypeScript 类型根本不是运行时依赖,应该始终放在 devDependencies 中。现在我困惑了:如何处理 @types/express、@t