npm在不同的深度级别安装依赖项
我有一个作为github repo发布的“eslint config”模块。它具有以下依赖性:npm在不同的深度级别安装依赖项,npm,Npm,我有一个作为github repo发布的“eslint config”模块。它具有以下依赖性: "dependencies": { "babel-eslint": "7.2.3", "babel-runtime": "^6.0.0", "eslint": "3.19.0", "eslint-config-airbnb": "15.0.1", "eslint-plugin-import": "2.3.0", "eslint-plugin-jsx-
"dependencies": {
"babel-eslint": "7.2.3",
"babel-runtime": "^6.0.0",
"eslint": "3.19.0",
"eslint-config-airbnb": "15.0.1",
"eslint-plugin-import": "2.3.0",
"eslint-plugin-jsx-a11y": "5.0.3",
"eslint-plugin-react": "7.0.1"
},
在另一个空项目“estest”中,我将此模块作为单个开发人员依赖项安装:
npm i -D github:MyTeam/eslint-config
该命令生成以下输出:
npm WARN eslint-config-airbnb@15.0.1 requires a peer of eslint@^3.19.0 but none was installed.
npm WARN eslint-plugin-import@2.3.0 requires a peer of eslint@2.x - 3.x but none was installed.
npm WARN eslint-plugin-jsx-a11y@5.0.3 requires a peer of eslint@^2.10.2 || 3.x but none was installed.
npm WARN eslint-plugin-react@7.0.1 requires a peer of eslint@^3.0.0 but none was installed.
npm WARN eslint-config-airbnb-base@11.2.0 requires a peer of eslint@^3.19.0 but none was installed.
+ eslint-config@1.0.0
added 203 packages in 13.898s
它的行为类似于未安装eslint
模块。
如果我在estest/node\u模块中查看,我会看到该结构:
node_modules
eslint-config // <-- this is my module
node_modules
eslint // <-- it has only one dep installed inside
// all other `eslint-config` deps are flat-installed into root:
babel-eslint
eslint-config-airbnb
eslint-plugin-import
eslint-plugin-jsx-a11y
eslint-plugin-react
...
我希望能够只安装eslint config
依赖项,而不单独安装eslint
。如何做到这一点?我认为将它们同时添加为peerDeps和dep会将包向上移动,但我只是遇到了一个没有(并且不是任何其他内容的dep)的包,因此这一定不是一个保证的解决方案。你可以查看纱线的“扁平”,但我不想把纱线换成这个。
└─┬ eslint-config@1.0.0
├─┬ babel-eslint@7.2.3
├─┬ UNMET PEER DEPENDENCY eslint@3.19.0
├─┬ eslint-config-airbnb@15.0.1
│ ├── UNMET PEER DEPENDENCY eslint@^3.19.0
│ └── eslint-config-airbnb-base@11.2.0
├─┬ eslint-plugin-import@2.3.0
│ ├─┬ eslint-import-resolver-node@0.2.3
│ ├─┬ eslint-module-utils@2.1.1
├─┬ eslint-plugin-jsx-a11y@5.0.3
└─┬ eslint-plugin-react@7.0.1