Почему Heroku говорит мне, что не может найти package.json в моем модуле, когда я делаю push - PullRequest
1 голос
/ 30 октября 2019

Я создал свой собственный пакет npm из форка реакции-coverflow. Кажется, что он нормально работает в моем приложении локально, используя его следующим образом: «npm install response-coverflow-mod» --save.

Я могу запустить свое приложение, используя «run with debug (F5)» в VsCodeи npm start в папке клиента для запуска внешнего интерфейса React.

Затем я выполняю сборку npm run для клиентской папки, и она отлично работает.

Когда я нажимаю heroku, каждый раз происходит сбой с этой ошибкой:


npm ERR! code ENOLOCAL
npm ERR! Could not install from "../../react-coverflow-mod" 
as it does not contain a package.json file.

1. Я знаю, что в модуле есть package.json, потому что я могу установить его через "npm install response-coverflow-mod": https://www.npmjs.com/package/react-coverflow-mod

2. Установленный модуль содержит файл package.json

3. В моем репозитории github есть package.json: https://github.com/leroyvaughan/react-coverflow

Я не уверен, как мне это исправить. Нужен ли файл package.json для перехода в папку / Dist? Что не так с Heroku.

1 Ответ

1 голос
/ 31 октября 2019

Похоже, как герою, попробуйте установить пакет с относительного пути вместо опубликованного имени. Это прекрасно объясняет, почему вы можете работать локально, но не в производственной среде.

Откройте ваш проект и найдите точную строку , отображаемую в вашем журнале: "../../react-coverflow-mod", и вы сможетечтобы быстро найти его.

Если вы работаете в Unix-системе (не знаете о Windows), вы можете выполнить поиск, используя grep:

grep -rnw '/path/to/somewhere/' -e '../../react-coverflow-mod'

Убедитесь, что это включает в себя вашу корневую папку , которая содержит package.json, и мы могли бы * игнорировать node_modules, который всегда массивный.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...