#javascript #node.js #react-native #npm #dependencies
#javascript #node.js #react-native #npm #зависимости
Вопрос:
Я хотел бы начать с того, что я знаю, что есть тонна сообщений об этом как здесь, на SO, так и во всем Интернете, но я перепробовал все решения, и ничто не помогает.
Я создаю пакет компонентов React Native для использования в нескольких других проектах React Native. В идеале все, что должны были бы сделать другие команды , это добавить зависимость в свои приложения и запустить npm install
. Я добавил этот пакет в качестве зависимости от тестового приложения React Native, чтобы опробовать его, но после запуска npm install
я проверяю npm list
, и он сообщает мне, что у меня есть неудовлетворенные зависимости.
Изначально это была моя посылка package.json
:
"peerDependencies": {
"react": "16.8.3",
"react-native": "0.59.3"
},
"dependencies": {
"react-viro": "2.14.0"
}
Затем я изменил его на:
"dependencies": {
"react": "16.8.3",
"react-native": "0.59.3",
"react-viro": "2.14.0"
}
Я даже пытался уменьшить его до:
"dependencies": {
"react-viro": "2.14.0"
}
И это package.json
из тестового приложения:
"dependencies": {
"react": "16.8.3",
"react-native": "0.59.3",
"my-lib": "file:../my-lib"
}
Но после npm install
и npm list
я получаю:
npm ERR! missing: react@16.8.3, required by my-lib@1.0.0
npm ERR! missing: react-native@0.59.3, required by my-lib@1.0.0
npm ERR! missing: react-viro@2.14.0, required by my-lib-@1.0.0
(или просто последняя строка, когда только она объявлена как зависимость в my-lib).
Конечно, при запуске приложения в симуляторе Android, как только приложение загружается, оно жалуется, что не может найти мою библиотеку, указывая на эту проблему, но я перепробовал все предложенные там решения, и ничего не работает, я также попытался удалить package-lock.json
и node_modules
, а затем установить снова, ничего не работает, и это сводит меня с ума это должно быть довольно просто, чего мне здесь не хватает?
Примечание: NPM — это последняя версия (6.9.0)
Ответ №1:
Итак, оказывается, что в моих конфигурациях не было ничего плохого, проблема связана с нерешенной ошибкой NPM (по крайней мере, на момент написания этой статьи), связанной с локальными зависимостями ( file:..
), я загрузил этот модуль в NPM, извлек зависимость оттуда, и после запуска npm install
больше не было неудовлетворенных зависимостей.