Узнайте, как включить Bootstrap в свой проект с помощью Webpack.

Установка Bootstrap

Установка Bootstrap как модуль Node.js с использованием npm.

Импорт JavaScript

Импортируйте Bootstrap’s JavaScript, добавив эту строку в точку входа Вашего приложения (обычно index.js или app.js):

import 'bootstrap';

Кроме того, Вы можете импортировать плагины по отдельности по мере необходимости:

import 'bootstrap/js/dist/util';
import 'bootstrap/js/dist/alert';
...

Bootstrap зависит от jQuery и Popper, которые указаны в свойстве peerDependencies; это означает, что Вам нужно будет обязательно добавить их оба в Ваш package.json, используя npm install --save jquery popper.js.

Импорт стилей

Импорт предварительно скомпилированного Sass

Чтобы использовать весь потенциал Bootstrap и настроить его в соответствии с Вашими потребностями, используйте исходные файлы как часть процесса объединения Вашего проекта.

Сначала создайте свой собственный _custom.scss и используйте его, чтобы переопределить встроенные пользовательские переменные. Затем используйте Ваш основной файл Sass для импорта Ваших пользовательских переменных, а затем Bootstrap:

@import "custom";
@import "~bootstrap/scss/bootstrap";

Для компиляции Bootstrap убедитесь, что Вы установили и используете необходимые загрузчики: sass-loader, postcss-loader с Autoprefixer. При минимальной настройке конфигурация Вашего веб-пакета должна включать это или подобное правило:

...
{
  test: /\.(scss)$/,
  use: [{
    loader: 'style-loader', // вставить CSS на страницу
  }, {
    loader: 'css-loader', // переводит CSS в модули CommonJS
  }, {
    loader: 'postcss-loader', // Выполнить действия postcss
    options: {
      plugins: function () { // плагины postcss, можно экспортировать в postcss.config.js
        return [
          require('autoprefixer')
        ];
      }
    }
  }, {
    loader: 'sass-loader' // компилирует Sass в CSS
  }]
},
...

Импорт скомпилированного CSS

В качестве альтернативы Вы можете использовать готовый к использованию CSS Bootstrap, просто добавив эту строку в точку входа Вашего проекта:

import 'bootstrap/dist/css/bootstrap.min.css';

В этом случае Вы можете использовать существующее правило для css без каких-либо специальных изменений в конфигурации webpack, за исключением того, что Вам не нужен sass-loader только style-loader и css-loader.

...
module: {
  rules: [
    {
      test: /\.css$/,
      use: ['style-loader', 'css-loader']
    }
  ]
}
...