Source

Вебпак

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

Установка бутстрапа

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

Импорт JavaScript

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

import 'bootstrap';

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

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

Bootstrap зависит от jQuery и Popper , они определены как peerDependencies, это означает, что вам нужно обязательно добавить их оба в свой файл package.jsonusing 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', // inject CSS to page
    }, {
      loader: 'css-loader', // translates CSS into CommonJS modules
    }, {
      loader: 'postcss-loader', // Run post css actions
      options: {
        plugins: function () { // post css plugins, can be exported to postcss.config.js
          return [
            require('precss'),
            require('autoprefixer')
          ];
        }
      }
    }, {
      loader: 'sass-loader' // compiles Sass to CSS
    }]
  },
  ...

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

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

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

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

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