Как импортировать пакет npm из родительского проекта в мою библиотеку

#reactjs #npm

Вопрос:

Я разрабатываю пакет npm, содержащий компоненты React. Я загрузил этот пакет с помощью библиотеки create-react. Насколько я понимаю, пакеты не должны использовать свой собственный экземпляр React, скорее, они должны использовать экземпляр React из родительского проекта, чтобы избежать конфликтов с версиями и т. Д. Насколько я понимаю, это достигается путем указания react peerDependencies в package.json файле как a.

У меня есть несколько вопросов:

  1. Гарантирует ли включение в react качестве одноранговой зависимости, что при импорте react файлов в моем пакете он будет искать react в моем родительском проекте node_modules , а не в пакете node_modules ? Если нет, то как мне этого добиться? Я подозреваю, что у меня есть фундаментальное непонимание того, как экземпляры React должны быть разделены между двумя кодовыми базами?
  2. Мой родительский проект использует webpack и мой пакет npm использует Rollup.js . Существует ли какая-либо конфигурация, необходимая для этих двух комплектов, чтобы обеспечить такое совместное использование React.
  3. Этот пакет npm используется только для совместного использования кода для схожих функций в двух проектах. Означает ли это, что все зависимости в моем пакете должны быть одноранговыми зависимостями, учитывая, что в моих основных проектах уже будут установлены библиотеки? Я хотел бы вызывать/импортировать любые сторонние библиотеки (например antd , или lodash ) непосредственно из родительских проектов, а не устанавливать их снова в свой пакет.