Skip to main content Skip to docs navigation
View on GitHub

Webpack 和 bundlers

瞭解如何使用 Webpack 和其他 bundlers 將 Bootstrap 加入到你的專案中。

六角學院的 Bootstrap 5 課程上線囉,立即與萬人一同學習最專業、最深入的 Bootstrap 5 課程。

立即上課去

安裝 Bootstrap

使用 Node.js npm 安裝 bootstrap

匯入 JavaScript

匯入 Bootstrap 的 JavaScript 在你專案的進入點加入下面這行 (通常是 index.js 或 app.js):

import 'bootstrap';

// or get all of the named exports for further usage
import * as bootstrap from 'bootstrap';

另外,假設你只需要我們的一些插件,你可以根據需要單獨匯入插件 :

import Alert from 'bootstrap/js/dist/alert';

// or, specify which plugins you need:
import { Tooltip, Toast, Popover } from 'bootstrap';

Bootstrap 需要 Popper,這些被定義為 peerDependencies。 這意味著你一定要記得加入到 package.json 使用 npm install @popperjs/core.

匯入樣式

匯入預編譯的 Sass

充分享受 Bootstrap 的潛力並依照您的需求進行自定義,使用原始檔案作為你編譯的部分內容。

首先,創建您自己的 _custom.scss 並使用它來覆蓋 自定義變數。然後,使用你主要的 sass 文件導入你的自定義變數,接下來再載入 Bootstrap:

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

要讓 Bootstrap 進行編譯,先確認你安裝並使用了必要的 loader: sass-loaderpostcss-loader 搭配 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

另外,你可以將此程式碼加到你專案的進入點:

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

這種情況下,您可以使用現有的 css 而無需對 webpack 配置進行任何特殊修改,除此之外不需要 sass-loader 只需要 style-loadercss-loader

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