Как мне справиться с установкой одноранговых зависимостей в Angular CLI?

я оказался в почти бесконечном цикле ошибок при попытке обновить свой угловой CLI и NPM. Каждый раз, когда я обновляю, я встречаюсь с предупреждающими сообщениями, говорящими мне установить одноранговые зависимости (см. ниже), но каждый раз, когда я устанавливаю зависимость, я встречаюсь с более предупреждающими сообщениями. Есть ли лучший способ справиться с этой ситуацией или это серьезно занять несколько часов?

npm WARN @angular/animations@5.2.1 requires a peer of @angular/core@5.2.1 
but none is installed. You must install peer dependencies yourself.
npm WARN @angular/compiler-cli@5.1.0 requires a peer of typescript@>=2.4.2 
<2.6 but none is installed. You must install peer dependencies yourself.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.6 requires a peer of 
@angular/core@^4.0.3 but none is installed. You must install peer 
dependencies yourself.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.6 requires a peer of 
@angular/common@^4.0.3 but none is installed. You must install peer 
dependencies yourself.
npm WARN @ng-bootstrap/ng-bootstrap@1.0.0-beta.6 requires a peer of 
@angular/forms@^4.0.3 but none is installed. You must install peer 
dependencies yourself.
npm WARN @schematics/angular@0.1.17 requires a peer of @angular-
devkit/core@0.0.29 but none is installed. You must install peer dependencies 
yourself.
npm WARN @schematics/angular@0.1.17 requires a peer of @angular-
devkit/schematics@0.0.52 but none is installed. You must install peer 
dependencies yourself.
npm WARN @schematics/schematics@0.0.11 requires a peer of @angular-
devkit/core@0.0.22 but none is installed. You must install peer dependencies 
yourself.
npm WARN angular2-notifications@0.7.4 requires a peer of 
@angular/core@^4.0.1 but none is installed. You must install peer 
dependencies yourself.
npm WARN angular2-notifications@0.7.4 requires a peer of 
@angular/common@^4.0.1 but none is installed. You must install peer 
dependencies yourself.
npm WARN angular2-notifications@0.7.4 requires a peer of @angular/platform-
browser@^4.0.0 but none is installed. You must install peer dependencies 
yourself.
npm WARN angular2-notifications@0.7.4 requires a peer of 
@angular/animations@^4.0.1 but none is installed. You must install peer 
dependencies yourself.
npm WARN bootstrap@4.0.0-beta.2 requires a peer of jquery@1.9.1 - 3 but none 
is installed. You must install peer dependencies yourself.
npm WARN bootstrap@4.0.0-beta.2 requires a peer of popper.js@^1.12.3 but 
none is installed. You must install peer dependencies yourself.
npm WARN ng2-toasty@4.0.3 requires a peer of @angular/core@^2.4.7 || ^4.0.0 
but none is installed. You must install peer dependencies yourself.
npm WARN ngx-carousel@1.3.5 requires a peer of @angular/core@^2.4.0 || 
^4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN ngx-carousel@1.3.5 requires a peer of @angular/common@^2.4.0 || 
^4.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN tsickle@0.25.5 requires a peer of typescript@>=2.4.2 <2.6 but none 
is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 
(node_modulesfsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for 
fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: 
{"os":"win32","arch":"x64"})

Я знаю, что, должно быть, делаю что-то не так, но я новичок в Angular.

1 ответов


предупреждения о одноранговых зависимостях чаще всего можно игнорировать. Единственный раз, когда вы захотите принять меры, - это если одноранговая зависимость полностью отсутствует или если версия одноранговой зависимости выше установленной версии.

давайте это предупреждение в качестве примера:

НПМ предупреждает @angular/animations@5.2.1 требуется одноранговый @angular/core@5.2.1 но установки нет. Необходимо установить peer зависимости себе.

С Angular вы хотели бы, чтобы версии, которые вы используете, были согласованы во всех пакетах. Если есть какие-либо несоответствующие версии, измените версии в своем пакета.в JSON, и запустить npm install таким образом, они все синхронизированы. Я, как правило, сохраняю свои версии для Angular в последней версии, но вам нужно будет убедиться, что ваши версии совместимы с любой версией Angular, которая вам нужна (которая может быть не последней).

в ситуация такая:

НПМ предупреждает ngx-carousel@1.3.5 требуется одноранговый @ angular / core@^2.4.0 || ^4.0.0, но не установлен. Необходимо установить одноранговые зависимости себе.

если вы работаете с версией Angular это выше, чем 4.0.0, то у вас, вероятно, не будет никаких проблем. Ничего насчет этого. Если вы используете угловую версию под 2.4.0, вам нужно поднять свою версию. Обновить пакета.в JSON, и запустить npm install, или run npm install для конкретной версии вам нужно. Вот так:

npm install @angular/core@5.2.3 --save

вы можете оставить --save если вы используете npm 5.0.0 или выше, эта версия сохраняет пакет в разделе зависимостей пакета.в JSON автоматически.

в этой ситуации:

npm предупреждает о необязательном пропуске необязательной зависимости: fsevents@1.1.3 (node_modules\fsevents): npm предупреждает notsup ПРОПУСК НЕОБЯЗАТЕЛЬНОЙ ЗАВИСИМОСТИ: Неподдерживаемые платформы fsevents@1.1.3: хотел {"os": "darwin", "arch":" any"} (current: {"os":"win32","arch":"x64"})

вы используете Windows, и fsevent требуется OSX. Это предупреждение можно игнорировать.

надеюсь, что это поможет, и получайте удовольствие обучения угловой!