BrowserslistError: Неизвестный запрос браузера `dead` в приложении React / Express - PullRequest
0 голосов
/ 23 октября 2018

Когда я запускаю 'npm start', приложение запускается нормально, но 'npm run build' выдает мне следующее сообщение в терминале:

> workout_tracker@0.1.0 build /Users/*******/mern-workout/client
> react-scripts build

Creating an optimized production build...
Failed to compile.

./src/Components/UI/Spinner/Spinner.module.css
Module build failed: BrowserslistError: Unknown browser query `dead`
    at Array.forEach (<anonymous>)


npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! workout_tracker@0.1.0 build: `react-scripts build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the workout_tracker@0.1.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional 
logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/*******/.npm/_logs/2018-10-22T23_21_04_691Z-debug.log

Я искал, но, похоже, единственные решениябыть для людей, использующих Angular, которые имеют некоторые проблемы с их версией Bootstrap.Я не использую Bootstrap в своем приложении.

Я попытался удалить "not dead" из массива browserslist, просто чтобы посмотреть, что произойдет, и я получил это:

Creating an optimized production build...
Failed to compile.

Failed to minify the code from this file: 

    ./node_modules/query-string/index.js:8 

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! workout_tracker@0.1.0 build: `react-scripts build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the workout_tracker@0.1.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/******/.npm/_logs/2018-10-22T23_41_55_488Z-debug.log

Вот мой пакетФайл .json:

 {
  "name": "workout_tracker",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "axios": "^0.18.0",
    "browserslist": "^4.3.1",
    "cssnano": "^4.1.7",
    "firebase": "^5.3.0",
    "jw-paginate": "^1.0.2",
    "jw-react-pagination": "^1.0.7",
    "normalize.css": "^8.0.0",
    "query-string": "^6.2.0",
    "random-id": "0.0.2",
    "react": "^16.5.2",
    "react-dom": "^16.5.2",
    "react-headroom": "^2.2.2",
    "react-icons-kit": "^1.1.6",
    "react-redux": "^5.0.7",
    "react-router-dom": "^4.3.1",
    "react-scripts-cssmodules": "^1.1.10",
    "react-swipe-to-delete-component": "^0.3.4",
    "react-swipeout": "^1.1.1",
    "redux": "^4.0.0",
    "redux-thunk": "^2.3.0"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
  },
  "devDependencies": {
    "css-loader": "^1.0.0",
    "redux-devtools-extension": "^2.13.5",
    "webpack": "^3.8.1"
  },
  "browserslist": [
    ">0.2%",
    "not dead",
    "not ie <= 11",
    "not op_mini all"
  ],
  "proxy": "http://localhost:4000"
}

Ответы [ 3 ]

0 голосов
/ 29 ноября 2018

«мертвое» описание приходит в более новых версиях.Другими словами, 'dead' не определен в ../node_modules/autoprefixer-stylus/node_modules/browserslist/index.js.

Если вы откроете вышеупомянутый файл ../browserlist/index.js, высм .:

var QUERIES = [
  {
    regexp: /^last\s+(\d+)\s+major versions?$/i,
    select: function (context, versions) ...
  },
  ...,
]

Вы можете добавить туда следующее:

{
  regexp: /^dead$/i,
  select: function (context) {
    var dead = ['ie <= 10', 'ie_mob <= 10', 'bb <= 10', 'op_mob <= 12.1']
    return resolve(dead, context)
  }
}

Это сработало у меня без изменения версии зависимости в package-json.lock

0 голосов
/ 18 марта 2019

При использовании React обратите внимание на package.json.Там может быть добавлено следующее:

  "browserslist": [
    ">0.2%",
    "not dead",
    "not ie <= 11",
    "not op_mini all"
  ]

Удалите "not dead", и снова запустите yarn run build.Исправлена ​​проблема для меня.

0 голосов
/ 14 ноября 2018

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

Позвоните npm ls, найдите, кто использует Список браузеров <4, и откройте там проблему для обновления зависимостей. </p>

...