Как исправить предупреждение npm UNMET PEER DEPENDENCY?

116

Я нахожусь в Windows 10, Node версии 5.6.0 и Npm версии 3.6.0. Попытка установить angular -материал и mdi в рабочую папку. npm install angular -material mdi предоставляет следующие сообщения об ошибках:

+ - angular @1.5.0

+ - НЕЗАВИСИМАЯ НЕЗАВИСИМОСТЬ НЕЗАВИСИМОСТИ angular -animate@^1.5.0

+ - НЕЗАВИСИМАЯ ЗАВИСИМОСТЬ НЕОПРЕДЕЛЕННОГО angular -aria@^1.5.0

+ - angular [email protected]

+ - НЕЗАВИСИМАЯ НЕЗАВИСИМОСТЬ НЕЗАВИСИМОСТИ angular -messages@^1.5.0 `- [email protected]

npm WARN enoent ENOENT: нет такого файла или каталога, открыть 'C:\Users\xxxxx\Desktop\ngClassifieds\package.json'

npm WARN angular [email protected] требуется сверстник angular -animate@^1.5.0, но ни один из них не был установлен.

npm WARN angular [email protected] требует однорангового соединения angular -aria @^ 1.5 но никто не был установлен.

npm WARN angular [email protected] требуется сверстник angular -messages@^1.5.0, но никто не был установлен.

Как мне разрешить это, чтобы получить материал angular и mdi?

  • 0
    Эти ошибки создают какие-либо проблемы?
  • 0
    Не для Резы, так что поздно, но для любых других ... Попробуйте это: npm view angular-material peerDependencies
Показать ещё 2 комментария
Теги:
angular-material
npm
npm-install

7 ответов

101
Лучший ответ

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


Ответить на комментарий:

правильно в этом сообщении, в нем говорится, какие депрессии у вас отсутствуют

UNMET PEER DEPENDENCY angular-animate@^1.5.0 +-- 
UNMET PEER DEPENDENCY angular-aria@^1.5.0 +-- [email protected] +
UNMET PEER DEPENDENCY angular-messages@^1.5.0 `-- [email protected]` 

Итак, вам нужно npm install angular angular-animate angular-aria angular-material angular-messages mdi

  • 0
    Есть ли способ найти углубления для угловых материалов, чтобы я мог установить?
  • 0
    @ Reza Я добавляю этот комментарий в свой ответ для форматирования
Показать ещё 9 комментариев
42

UNMET PEER DEPENDENCY ошибка возникает, если зависимости одного или нескольких модулей, указанных в файле package.json, не выполняются. Внимательно проверьте предупреждения и обновите файл package.json с помощью правильных версий зависимостей.

Затем запустите

rm -rf node_modules/
npm cache clean
npm install

Это правильно установит все необходимые зависимости.

  • 0
    что такое зависимость от сверстников
  • 0
    Когда вы устанавливаете пакет, он может зависеть от конкретных версий других пакетов. Если вы не предоставите правильную зависимую версию пакета, то «Peer зависимость» не будет выполнена. Поэтому вам нужно обновить ожидаемую версию зависимых пакетов, чтобы решить эту проблему.
Показать ещё 4 комментария
9

В моем случае все зависимости уже были. Обновите NPM в этом случае, поскольку он может быть разбит. Это решило мою проблему. npm install -g npm

  • 0
    Работал на меня. Я получал сообщение об ошибке UNMET PEER DEPENDENCY typescript при попытке установить tslint . после обновления npm сначала нужно было установить typscript, а затем установить tslint.
  • 0
    По какой-то причине мне пришлось запускать его несколько раз, пока не обновились все его собственные зависимости.
Показать ещё 1 комментарий
5

npm-install-peers работал у меня.

npm install -g npm-install-peers
  • 0
    У меня не сработало: «У этого пакета, похоже, нет никаких взаимных зависимостей». Тем не менее, у меня есть несколько сообщений типа «npm ERR! Peer dep отсутствует: @ angular / common @ ^ 5.0.0 || ^ 6.0.0, требуется @ agm / core @ 1.0.0-beta.3»
4

Хорошо, поэтому я долго пытался изо всех сил пытаться понять это. Вот ядерный вариант, когда вы исчерпали все другие способы.

  • Создайте новую папку на своем компьютере.
  • Загрузите новую установку angular - я использовал это руководство: https://coursetro.com/posts/code/55/How-to-Install-an-Angular-4-App
  • Запустите его, убедитесь, что он работает
  • Затем установите свои зависимости один за другим из вашего файла package.json.
  • Запустите его после установки каждого из них.

Когда вы закончите и все еще работает, импортируйте свой фактический код в этот новый проект. Исправьте ошибки компиляции, вызванные более новой версией angular.

Вот что это для меня.. 1 час переделки против 6 часов попыток выяснить, что wtf было неправильным.. желаю, чтобы я сделал это таким образом, чтобы начать..

  • 0
    OP использует AngularJS
4

Одной из наиболее возможных причин этой ошибки может быть то, что вы определили более старую версию в вашем пакете. json. Чтобы решить эту проблему, измените версии в package.json на соответствие тем, с которыми npm жалуется.

Как только закончите, запустите npm install и voila!!.

3

Сегодня доступно Angular 2 rc.7, и у меня была аналогичная проблема с [email protected] UNMET PEER DEPENDENCY.

Если вы, как и я, просто заменили @angular/...rc.6 на @angular/...rc.7 - этого недостаточно. Поскольку, например, @angular/router не имеет версии rc.6.

В этом случае лучше просмотрите package.json в Быстрый старт

  • 0
    OP использует AngularJS

Ещё вопросы

Сообщество Overcoder
Наверх
Меню