最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

NodeJS 我的依赖项devDependencies 的 devDependencies 没有被安装或列出

网站源码admin39浏览0评论

NodeJS 我的依赖项/devDependencies 的 devDependencies 没有被安装或列出

NodeJS 我的依赖项/devDependencies 的 devDependencies 没有被安装或列出

在我的项目中,我的

devDependencies
dependencies
,或者我的
devDependencies
,在我运行时没有被安装

npm 安装

npm 安装 --include=dev

在很多方面这似乎是明智的。但是当

devDependency
不可用时,其中一个依赖项可能会错误地失败。

这意味着工作吗?

npm
确实安装
dependencies
它似乎忽略了
devDependencies
.

我的一个依赖的例子

package.json

{
  "name": "test-helper-chai",
  "version": "1.0.11",
  "description": "chai extended with specific assertions",
  "license": "MIT",
  "main": "dist/index.js",
  "devMain": "src/index.js",
  "engines": {
    "node": ">=14"
  },
  "devDependencies": {
    "chai": "^4.3.4",
    "eslint": "^8.24.0",
    "prettier": "^2.7.1",
    "sinon": "^9.2.4"
  },
  "dependencies": {
    "check-error": "^1.0.2",
    "lodash": "^4.17.21"
  },
  "scripts": {
    "build": "yarn build:src",
    "build:src": "build -dest \"./dist\" -src \"./src\" -js -ts -maps",
    "test": "yarn test:style && yarn test:unit && yarn test:integration && yarn test:browser",
    "test:browser": "test --integration --unit --runner karma",
    "test:integration": "test --integration --runner mocha",
    "test:style": "eslint ./src/**/*.*",
    "test:unit": "test --unit --runner jest"
  }
}

这里

chai
没有被安装但是
check-error
是。

回答如下:

这是预期的行为。

当您在与 package.json 文件相同的目录中运行

npm install
时,npm 将为该 package.json 安装 devDependencies 和依赖项。假设 package.json 是正在开发的包。

嵌套依赖的工作方式不同。只会安装嵌套依赖项的常规依赖项。这是为了减少膨胀。想象一下,如果每个包都将其所有构建工具、开发包和 linters 连同其生产代码一起运送!

您开发的包值得牢记。如果生产包运行需要依赖,你应该在

dependencies
中安装它。如果只需要构建/开发,它应该放在 devDependencies 中。

发布评论

评论列表(0)

  1. 暂无评论