Запрашиваемый предмет помещается на карантин в Reactjs - PullRequest
0 голосов
/ 04 июля 2018

Я пытаюсь запустить команду npx create-Reaction-app в корпоративном реестре. Проблема в том, что элемент sockjs@0.3.18 недоступен, и поэтому он останавливает установку; тем не менее, элемент sockjs@0.3.17 есть. Можно ли как-нибудь запустить эту команду, указав, что она должна установить другую версию sockjs?.

1 Ответ

0 голосов
/ 04 июля 2018

Используя npm ls sockjs, я вижу, что это зависимость react-scripts@1.1.4 / webpack-dev-server@2.9.4

└─┬ реагировать-скрипты@1.1.4

---- └─┬ webpack-dev-server@2.9.4

-------- └── sockjs@0.3.18

В create-react-app есть возможность использовать нестандартную версию react-scripts:

- версия скрипта <альтернативный пакет>

Это должно работать:

npx create-response-app --scripts-version 0.9.5 app

0.9.5 является последней версией, которая зависит от более ранней версии sockjs.

Я нашел это, посмотрев package.json из webpack-dev-server и затем react-scripts, которые имели соответственно пониженные версии. (Я делал это вручную на страницах релизов GitHub ... кто-нибудь знает лучший инструмент для этого?)

Альтернативные подходы:

  • Получите обновленные sockjs, одобренные в вашем корпоративном реестре:)
  • Предполагая, что разница между sockjs@0.3.18 и sockjs@0.3.17 несущественна, поскольку для create-react-app (без гарантий) вы, вероятно, npm install create-react-app можете найти бит в исходном коде (node_modules/create-react-app/create-react-app.js), который загружает react-scripts, и взломайте его, чтобы он указывал на ваш собственный форк последней react-scripts с измененным номером версии для webpack-dev-server (1.16.4). Не рекомендуется!
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...