我每次运行yarn global add ...
或yarn global remove ...
时都会发出警告,例如...
warning "nativescript > marked-terminal@3.1.1" has incorrect peer dependency "marked@^0.4.0 || ^0.5.0".
warning "nativescript > nativescript-preview-sdk > tslint@5.4.3" has unmet peer dependency "typescript@>=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev".
warning "nativescript > nativescript-preview-sdk > tslint > tsutils@2.29.0" has unmet peer dependency "typescript@>=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev".
或
yarn add ...
和yarn remove ...
命令给出警告,例如...
warning " > babel-loader@8.0.6" has unmet peer dependency "webpack@>=2".
warning "nativescript-dev-webpack > ts-loader@5.4.5" has unmet peer dependency "typescript@*".
warning " > vue-loader@15.4.2" has unmet peer dependency "css-loader@*".
注意:似乎yarn upgrade
和yarn cache clean
都没有帮助
答案 0 :(得分:1)
yarn
(但是如果您使用npm
作为客户端也将是相同的)警告您有关未满足的对等项依赖关系。 Peer dependencies与通常的依赖项不同之处在于,安装模块将不安装其对等依赖项,隐式假设您已经拥有它们,或者无论如何都将需要它们来使用该软件包。
例如,babel-loader
显然需要使用Webpack
,并且它希望将其包含在package.json
中,而不是作为传递依赖而引入。
在某些情况下,此操作无法按预期进行:
eslint-config-react-app
需要一个eslint-plugin-flowtype
的对等项,如果您不使用Flow,这毫无意义。如何解决此问题?通过将这些依赖项添加到您的项目中。