@Niksak

Почему React npm start не работает после установки Styled components?

Установил я node.js (рекомендованную версию) для запуска react приложений через npm start.
Создал приложение, открыл на localhost:3000 как обычно, все ок.
Но я установил библиотеку Styled components командой npm install --save styled-components.

И после этого npm start уже не работало.
Снизу ошибка из командной строки, осторожно, много буков.
Не особо помогает удаление этой шняги.

spoiler

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:71:19)
    at Object.createHash (node:crypto:133:10)
    at module.exports (E:\todo-list\node_modules\webpack\lib\util\createHash.js:135:53)
    at NormalModule._initBuildHash (E:\todo-list\node_modules\webpack\lib\NormalModule.js:417:16)
    at handleParseError (E:\todo-list\node_modules\webpack\lib\NormalModule.js:471:10)
    at E:\todo-list\node_modules\webpack\lib\NormalModule.js:503:5
    at E:\todo-list\node_modules\webpack\lib\NormalModule.js:358:12
    at E:\todo-list\node_modules\loader-runner\lib\LoaderRunner.js:373:3
    at iterateNormalLoaders (E:\todo-list\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
    at iterateNormalLoaders (E:\todo-list\node_modules\loader-runner\lib\LoaderRunner.js:221:10)
Browserslist: caniuse-lite is outdated. Please run:
  npx browserslist@latest --update-db
  Why you should do it regularly: https://github.com/browserslist/browserslist#browsers-data-updating
E:\todo-list\node_modules\react-scripts\scripts\start.js:19
  throw err;
  ^

Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:71:19)
    at Object.createHash (node:crypto:133:10)
    at module.exports (E:\todo-list\node_modules\webpack\lib\util\createHash.js:135:53)
    at NormalModule._initBuildHash (E:\todo-list\node_modules\webpack\lib\NormalModule.js:417:16)
    at E:\todo-list\node_modules\webpack\lib\NormalModule.js:452:10
    at E:\todo-list\node_modules\webpack\lib\NormalModule.js:323:13
    at E:\todo-list\node_modules\loader-runner\lib\LoaderRunner.js:367:11
    at E:\todo-list\node_modules\loader-runner\lib\LoaderRunner.js:233:18
    at context.callback (E:\todo-list\node_modules\loader-runner\lib\LoaderRunner.js:111:13)
    at E:\todo-list\node_modules\babel-loader\lib\index.js:59:103 {
  opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
  library: 'digital envelope routines',
  reason: 'unsupported',
  code: 'ERR_OSSL_EVP_UNSUPPORTED'
}

Node.js v18.13.0


Ну вообще желательно без удаления, ведь я установил чтобы использовать в планах курса.
  • Вопрос задан
  • 461 просмотр
Решения вопроса 1
@slide13
frontend/web-developer
Начиная с Node.js 17й версии там теперь используется OpenSSl 3.0, который, видимо, не поддерживается в одной из зависимостей стайлед компонентов.
В качестве временного решения либо откатить ноду на 16ю версию, либо запускать с параметром --openssl-legacy-provider. Можно еще в старт скрипт прописать
"start": "react-scripts --openssl-legacy-provider start"
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы