Source

ウェブパック

Webpack 3 を使用してプロジェクトに Bootstrap を含める方法を学びます。

ブートストラップのインストール

npm を使用して、Node.js モジュールとしてブートストラップをインストールします。

JavaScript のインポート

次の行をアプリのエントリ ポイント (通常はまたは)に追加して、 Bootstrap の JavaScriptをインポートします。index.jsapp.js

import 'bootstrap';

または、必要に応じてプラグインを個別にインポートすることもできます。

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

Bootstrap はjQueryPopperに依存しています。これらは として定義されています。つまり、両方をusingpeerDependenciesに必ず追加する必要があります。package.jsonnpm install --save jquery popper.js

プラグインを個別にインポートすることを選択した場合は、 exports-loaderもインストールする必要があることに注意してください。

スタイルのインポート

プリコンパイル済み Sass のインポート

Bootstrap の可能性を最大限に活用し、必要に応じてカスタマイズするには、ソース ファイルをプロジェクトのバンドル プロセスの一部として使用します。

まず、独自の変数を作成し、それを使用して組み込みのカスタム変数_custom.scssをオーバーライドします。次に、メインの sass ファイルを使用してカスタム変数をインポートし、続いて Bootstrap をインポートします。

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

Bootstrap をコンパイルするには、必要なローダー ( sass-loaderpostcss-loader with Autoprefixer )をインストールして使用していることを確認してください。最小限のセットアップで、webpack 構成に次のルールまたは類似のルールを含める必要があります。

  ...
  {
    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 のインポート

または、次の行をプロジェクトのエントリ ポイントに追加するだけで、Bootstrap のすぐに使用できる css を使用できます。

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

この場合、style-loadercss-loaderだけcssを必要としないことを除いて、webpack 構成に特別な変更を加えることなく、既存のルールを使用できます。sass-loader

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