Невозможно удалить веб-пакет из сценария реакции

Я пытался создать приложение в React, что для меня в новинку. Но после установки веб-пакета npm start не работает. Это дает мне:

[email protected] start /home/hanna/Desktop/projects/my-todo-react react-scripts start

Возможно, возникла проблема с деревом зависимостей проекта. Скорее всего, это не ошибка в приложении Create React, а то, что вам нужно исправить локально.

Пакет response-scripts, предоставляемый приложением Create React, требует зависимости:

"webpack": "4.19.1"

Не пытайтесь установить его вручную: ваш менеджер пакетов делает это автоматически. Однако выше в дереве была обнаружена другая версия webpack:

/ home / hanna / node_modules / webpack (версия: 4.20.2)

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

Если вы предпочитаете игнорировать эту проверку, добавьте SKIP_PREFLIGHT_CHECK = true в файл .env в своем проекте. Это навсегда отключит это сообщение, но вы можете столкнуться с другими проблемами.

Чтобы исправить дерево зависимостей, попробуйте выполнить следующие шаги в точном порядке:

  1. Удалите package-lock.json (не package.json!) И / или yarn.lock в папке вашего проекта.
  2. Удалите node_modules в папке вашего проекта.
  3. Удалите «webpack» из зависимостей и / или devDependencies в файле package.json в папке вашего проекта.
  4. Запустите npm install или yarn, в зависимости от того, какой менеджер пакетов вы используете.

В большинстве случаев этого должно быть достаточно, чтобы устранить проблему. Если это не помогло, вы можете попробовать еще несколько вещей:

  1. Если вы использовали npm, установите пряжу (http://yarnpkg.com/) и вместо этого повторите с ней вышеуказанные шаги. Это может помочь, потому что у npm есть известные проблемы с подъемом пакетов, которые могут быть решены в будущих версиях.

  2. Убедитесь, что / home / hanna / node_modules / webpack находится вне каталога вашего проекта. Например, вы могли случайно что-то установить в свою домашнюю папку.

  3. Попробуйте запустить npm ls webpack в папке вашего проекта. Это скажет вам, какой другой пакет (помимо ожидаемых сценариев реакции) установил webpack.

Если ничего не помогает, добавьте SKIP_PREFLIGHT_CHECK = true в файл .env в своем проекте. Это навсегда отключит эту предполетную проверку, если вы все равно захотите продолжить.

P.S. Мы знаем, что это длинное сообщение, но, пожалуйста, прочтите шаги выше :-) Надеемся, вы найдете их полезными!

npm ERR! код ELIFECYCLE npm ERR! ошибка 1 npm ERR! [email protected] начало: react-scripts start npm ERR! Статус выхода 1 npm ERR! npm ERR! Ошибка при запуске скрипта [email protected]. npm ERR! Вероятно, это не проблема npm. Скорее всего, выше есть дополнительный вывод журнала.

npm ERR! Полный журнал этого запуска можно найти в: npm ERR! /home/hanna/.npm/_logs/2018-10-02T10_39_06_361Z-debug.log

Как вы установили Webpack? Поскольку похоже, что в проекте используется приложение Create React, Webpack, вероятно, уже является зависимостью в package.json. Таким образом, простой способ установить его - просто перейти в каталог проекта и набрать npm install (или yarn install) в терминале. Если вы установили его глобально, вы можете удалить его глобально с помощью npm -g uninstall webpack.

Atav32 02.10.2018 19:41

да. Webpack уже был в package.json. Но для реакции терминала требуется более старая версия webpack. Так что искал очень долго. И после этого я понял, что webpack установлен глобально. И я удалил его, и в папке проекта установил ту версию, которая требует реакции. Большое спасибо за ответ

Hanna Kogut 03.10.2018 14:31

Большой! Рад слышать, что это сработало. Я резюмировал ответ для других читателей ниже.

Atav32 03.10.2018 22:17
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
24
3
43 249
18

Ответы 18

Поскольку похоже, что в проекте используется приложение Create React, Webpack, вероятно, уже является зависимостью в package.json. Таким образом, простой способ установить его - просто перейти в каталог проекта и набрать npm install (или yarn install) в терминале.

Если использование интерфейса командной строки Webpack вызывает ошибки, вероятно, это связано с тем, что глобально установлена ​​другая версия.

Чтобы удалить его глобально, введите npm -g uninstall webpack.

Создайте файл .env в корневом каталоге проекта и добавьте эту строку SKIP_PREFLIGHT_CHECK=true внутрь файла.

затем попробуйте запустить yarn start.

Это единственное решение, которое сработало для меня, все остальные шаги ничего не дали.

MdaG 01.02.2019 09:31

У меня сегодня была аналогичная проблема. Я решил с помощью следующих шагов:

  1. Выполните npm ls webpack ->, чтобы узнать, что я установил Webpack вне своей папки («как ваш ... / home / hanna / node_modules / webpack»).
  2. Затем cd в это место (/ home / hanna / node_modules /) и запустите npm install [email protected]. Таким образом, у меня будет та же версия Webpack, что и в папке моего проекта.

После этого, когда я запускаю npm start, он работает нормально.

Я сделал это аналогичным образом. Я удалил webpack глобально и установил версию 4.19 локально в папку своего проекта. Спасибо за Ваш ответ.

Hanna Kogut 11.10.2018 14:21

Ваша проблема в том, что вы установили версию веб-пакета: 4.20.2

Вам необходимо установить более раннюю версию "webpack": "4.19.1" `

Ваша проблема в том, что вы установили версию веб-пакета: 4.20.2

Вам необходимо установить более раннюю версию "webpack": "4.19.1" `.. Итак

$npm uninstall -g webpack

а также

$npm install -g [email protected]

надеюсь, это поможет

Чтобы решить эту проблему, мне пришлось удалить webpack и webpack-dev-server из папки node-modules, а затем установить их снова, но с другими версиями.

  1. Откройте cmd в папке node-modules вне папки вашего проекта

  2. Удалите webpack и webpack-dev-server:

    npm uninstall webpack
    npm uninstall webpack-dev-server
    
  3. Удалите папку узлы-модули и файл пакет-lock.json из папки вашего проекта.

  4. Снова открываем нод-модули

    npm install [email protected]
    npm install [email protected]
    
  5. Используйте эту команду в папке вашего проекта

    npm install
    

Это помогло мне, надеюсь, это поможет и вам.

для чего нужен webpack-dev-сервер и почему вы установили версию, отличную от webpack?

Emil 15.04.2020 00:40

Одно из решений, которое у меня было, заключалось в том, чтобы перейти в мою «Домашнюю» папку и удалить node_modules. папка и файл package-lock.json.

Потом работал.

Я удаляю папку node_modules в «Доме», и npm начинает работать для меня.

Aras 02.01.2019 09:07

Молодец! Это была моя проблема

Washington Braga 21.09.2020 20:16

Я не смог найти способ удалить всю папку модуля узла, единственный способ - удалить весь файл с помощью командной строки

rm -rf node_modules

Я думаю, что если у вас установлен глобальный пакет webpack, это может вызвать такую ​​ошибку. Глобальное удаление может решить проблему. Вот что я здесь сделал, и это работает.

Я столкнулся с той же проблемой, и у меня сработало следующее:

  • Удалите папку node-modules и файл package-lock.json.
  • Скачал и установил Node.js
  • npm install [email protected]
  • npm install [email protected]
  • Удалена запись babel-eslint из package.json
  • Использовал эту команду в папке проекта: npm install
  • Наконец yarn start или npm start

Из-за более новых версий это сработало для меня:

  1. Откройте окно терминала (командную строку) в папке node_modules вне папки вашего проекта.

  2. Удалите webpack и webpack-dev-server:

    npm uninstall webpack
    npm uninstall webpack-dev-server
    
  3. Удалите папку node_modules и файл package-lock.json из папки вашего проекта.

  4. Откройте node_modules снова

    npm install [email protected]
    npm install [email protected]
    
  5. Используйте эту команду в папке вашего проекта:

    npm install
    

Перейдите в каталог вашего проекта, в котором вы запускаете npm start, и выполните команду

touch .env

Если в вашем проекте нет ранее существовавшего файла .env, он будет создан. Перейдите в файл .env и добавьте следующий код (если вы находитесь в окне LINUX, вы делаете это, набирая nano .env, в противном случае просто используйте текстовый редактор. SKIP_PREFLIGHT_CHECK=true

Сохраните файл и попробуйте снова запустить npm start. Это решение именно то, что предлагается в сообщении об ошибке, и оно сработало для меня.

Если кто-то все еще сталкивается с этой проблемой и использует пряжу вместо npm, может (я пользователь Mac):

  • Открыть терминал
  • Тип yarn remove webpack
  • Войдите в каталог своего проекта с помощью файлового проводника.
  • Удалите все там
  • Откройте свой редактор кода
  • Удалите скрытые файлы (ETC: файлы .env или .gitignore), если они существуют.
  • В каталоге вашего проекта откройте терминал, введите npx create-react-app . и нажмите Enter.
  • И перезапустите приложение, набрав yarn start после загрузки.

У меня это сработало. Он загрузил веб-пакет, который необходим из сценариев реакции.

Перейдите к /home/hanna и введите npm i webpack@required_dependency. Это должно решить вашу проблему.

сделай это

первый код в терминале это ->

 yarn add --dev dotenv

создайте файл .env в корневом каталоге, затем добавьте строку ниже в файл .env

 SKIP_PREFLIGHT_CHECK=true 

Я думаю, что если у вас установлен глобальный пакет webpack, это может вызвать такую ​​ошибку. Глобальное удаление может решить проблему. Вот что я здесь сделал, и это работает.

npm uninstall webpack
npm uninstall webpack-dev-server

Удалите папку node_modules и файл package-lock.json из корневого каталога.

##thompsonmax## 

Затем вы можете запустить свою команду в своем приложении,

create-react-app react-app
  • npx создать-реагировать-приложение nameOfYourApp
  • найдите, где находится ваш nameOfYourApp, и замените папку src папкой из предыдущего проекта
  • использовать новый nameOfYourApp

Если у вас есть несколько папок node_modules с разными версиями зависимостей, одна может конфликтовать с другой. - сделать следующее:

  1. Выполните шаги 1–4, изначально указанные в каталоге проекта, и зафиксируйте обновленные изменения локально ~

я. Удалите пакет-lock.json (не package.json!) И / или yarn.lock в папке вашего проекта.

II. Удалите node_modules в папке вашего проекта.

iii. Удалите webpack из зависимостей и / или devDependencies в файле package.json в папке вашего проекта.

iv. Запустите npm install или yarn, в зависимости от того, какой менеджер пакетов вы используете.

  1. Найдите расположение папки node_modules, которой нет в папке вашего проекта ~ эта строка - (/ home / hanna / node_modules / webpack)

  2. Удалите это

  3. npm start

должно сработать :)!

  • Шаг 1. Создайте файл .env в корневом каталоге.
  • Шаг 2: добавьте эту строку в ваш файл .env: SKIP_PREFLIGHT_CHECK=true
  • Шаг 3: снова npm start

Другие вопросы по теме