Webpack とバンドラー
Webpack またはその他のバンドラーを使用して Bootstrap をプロジェクトに含める方法を学びます。
ブートストラップのインストール
npm を使用して、Node.js モジュールとしてブートストラップをインストールします。
JavaScript のインポート
次の行をアプリのエントリ ポイント (通常はまたは)に追加して、 Bootstrap の JavaScriptをインポートします。index.js
app.js
// You can specify which plugins you need
import { Tooltip, Toast, Popover } from 'bootstrap';
または、必要なプラグインがいくつかだけの場合は、必要に応じてプラグインを個別にインポートできます。
import Alert from 'bootstrap/js/dist/alert';
...
Bootstrap は、プロパティで指定されたPopperに依存しpeerDependencies
ます。これは、必ずpackage.json
usingに追加する必要があることを意味しますnpm install @popperjs/core
。
スタイルのインポート
プリコンパイル済み Sass のインポート
Bootstrap の可能性を最大限に活用し、必要に応じてカスタマイズするには、ソース ファイルをプロジェクトのバンドル プロセスの一部として使用します。
まず、独自の変数を作成し、それを使用して組み込みのカスタム変数_custom.scss
をオーバーライドします。次に、メインの Sass ファイルを使用してカスタム変数をインポートし、続いて Bootstrap をインポートします。
@import "custom";
@import "~bootstrap/scss/bootstrap";
Bootstrap をコンパイルするには、必要なローダー ( sass-loader、postcss-loader with Autoprefixer )をインストールして使用していることを確認してください。最小限のセットアップで、webpack 構成に次のルールまたは類似のルールを含める必要があります。
// ...
{
test: /\.(scss)$/,
use: [{
// inject CSS to page
loader: 'style-loader'
}, {
// translates CSS into CommonJS modules
loader: 'css-loader'
}, {
// Run postcss actions
loader: 'postcss-loader',
options: {
// `postcssOptions` is needed for postcss 8.x;
// if you use postcss 7.x skip the key
postcssOptions: {
// postcss plugins, can be exported to postcss.config.js
plugins: function () {
return [
require('autoprefixer')
];
}
}
}
}, {
// compiles Sass to CSS
loader: 'sass-loader'
}]
}
// ...
コンパイル済み CSS のインポート
または、次の行をプロジェクトのエントリ ポイントに追加するだけで、Bootstrap のすぐに使用できる CSS を使用できます。
import 'bootstrap/dist/css/bootstrap.min.css';
この場合、 style-loaderとcss-loaderだけcss
を必要としないことを除いて、webpack 構成に特別な変更を加えることなく、既存のルールを使用できます。sass-loader
// ...
module: {
rules: [
{
test: /\.css$/,
use: [
'style-loader',
'css-loader'
]
}
]
}
// ...