FARCER / Start-template-gulp-4-pug-sass

100 stars 53 forks source link

browserslist section package.json added #12

Closed Zobakka closed 4 years ago

Zobakka commented 5 years ago

Теория:

Browserslist служит для конфигурации совместного использования целевых браузеров и версий Node.js между различными инструментами фронтенда, таких как:

Все инструменты найдут целевые браузеры автоматически, после:

  1. добавления следующих строк в файл package.json:
"browserslist": [
    "last 3 version",
    "> 1%",
    "maintained node versions",
    "not dead"
  ]
  1. или в конфиге .browserslistrc:
# Browsers that we support

last 3 version
> 1%
maintained node versions
not dead

Browserslist будет использовать браузеры и версии Node.js опрашивая эти источники:

  1. ключ browserslist в package.json в текущем или родительском каталоге (рекомендуемый способ).
  2. файл конфигурации .browserslistrc в текущем или родительском каталоге.
  3. файл конфигурации browserslist в текущем или родительском каталоге.
  4. переменную среды BROWSERSLIST.
  5. Если вышеуказанные методы не дали результата, Browserslist будет использовать значения по умолчанию: > 0.5%, last 2 versions, Firefox ESR, not dead.

подробнее здесь

Дополнение: плагин Autoprefixer позволяет перезаписать ключ browserslistв package.json добавлением опции overrideBrowserslist (но это не рекомендуется).

Изменения:

  1. добавлен ключ browserslist в package.json.
  2. изменен файл gulp/tasks/styles.js - Autoprefixer тасков build и build-min не имеет опций и потому использует общую конфигурацию package.json, а таска dev свою опцию overrideBrowserslist.