#reactjs #npm
Вопрос:
Я разрабатываю пакет npm, содержащий компоненты React. Я загрузил этот пакет с помощью библиотеки create-react. Насколько я понимаю, пакеты не должны использовать свой собственный экземпляр React, скорее, они должны использовать экземпляр React из родительского проекта, чтобы избежать конфликтов с версиями и т. Д. Насколько я понимаю, это достигается путем указания react
peerDependencies
в package.json
файле как a.
У меня есть несколько вопросов:
- Гарантирует ли включение в
react
качестве одноранговой зависимости, что при импортеreact
файлов в моем пакете он будет искатьreact
в моем родительском проектеnode_modules
, а не в пакетеnode_modules
? Если нет, то как мне этого добиться? Я подозреваю, что у меня есть фундаментальное непонимание того, как экземпляры React должны быть разделены между двумя кодовыми базами? - Мой родительский проект использует
webpack
и мой пакет npm используетRollup.js
. Существует ли какая-либо конфигурация, необходимая для этих двух комплектов, чтобы обеспечить такое совместное использование React. - Этот пакет npm используется только для совместного использования кода для схожих функций в двух проектах. Означает ли это, что все зависимости в моем пакете должны быть одноранговыми зависимостями, учитывая, что в моих основных проектах уже будут установлены библиотеки? Я хотел бы вызывать/импортировать любые сторонние библиотеки (например
antd
, илиlodash
) непосредственно из родительских проектов, а не устанавливать их снова в свой пакет.