«Зависимость от однорангового узла» лучше всего понимать как мягкую зависимость между плагином и программным обеспечением, к которому он добавляет функциональность.
Если каждый плагин определяет жесткую зависимость от основного программного обеспечения, то вамбыть в аду управления версиями (хуже, чем сейчас).
«Зависимость от пира» позволяет плагину firebase (например) подсказать, с какой версией firebase он работает, путем присвоения имени равноправной зависимости.
Они так называемые, потому что ни одна из сторон не является "владельцем" отношений, это симбиоз, пакет с дополнительными функциями работает только с ограниченным диапазоном версий пакета "хост".
Я могу разрешить эти ошибки вручную, добавив yarn add @ firebase / app-types, но не понимаю, зачем мне это нужно - я никогда ничего не вызываю из @ firebase / app-типы непосредственно в моем приложении.
Поскольку «зависимость от сверстников» - это подсказка, ничто не установит эти зависимости для вас, они больше похожи на предложения.К сожалению, вы должны знать, нужна ли вам эта вещь или нет, и имеет ли это предупреждение смысл.
Возможно, вы являетесь жертвой этой ошибки https://github.com/yarnpkg/yarn/issues/4850, которая ссылается на проблему с app-types
требуется пакет также в пакетах, отличных от TypeScript.
Вы не включили языковой тег в свое сообщение, поэтому невозможно узнать, используете ли вы JavaScript или TypeScript, ноесли вы используете TypeScript, вам, вероятно, следует добавить этот пакет в качестве зависимости для разработки.
В этом смысл зависимости от равноправного узла, инструментарий не может точно знать, нужна ли вам эта вещь, и не удовлетворяет все ваши зависимости необязательно(равноправные) зависимости могут что-то нарушать, поэтому [warning]
.
Вы можете прочитать https://github.com/firebase/firebase-js-sdk/issues/1207#issuecomment-424804228 и заметить, что черно-белого ответа на этот вопрос нет, он кажется очень субъективным.