有关如何使用 Vite 将 Bootstrap 的 CSS 和 JavaScript 包含在项目中并将其捆绑在一起的官方指南。

想跳到最后吗?从 twbs/examples 存储库下载本指南的源代码和工作演示。您还可以在 StackBlitz 中打开示例进行实时编辑。
什么是 Vite?
Vite 是一款现代前端构建工具,专为速度和简单性而设计。它提供了高效且简化的开发体验,特别是对于现代 JavaScript 框架。
设置
我们正在使用 Bootstrap 从头开始构建一个 Vite 项目,因此在我们真正开始之前有一些先决条件和前期步骤。本指南要求您安装Node.js并熟悉终端。
创建一个项目文件夹并设置 npm。我们将创建文件夹并使用参数初始化 npm,以避免它问我们所有的交互式问题。my-project-y
mkdir my-project && cd my-project
npm init -y安装 Vite。与我们的 Webpack 指南不同,这里只有一个构建工具依赖项。我们过去用来表示这种依赖关系仅用于开发用途,而不是用于生产。--save-dev
npm i --save-dev vite安装 Bootstrap。现在我们可以安装 Bootstrap。我们还将安装 Popper,因为我们的下拉菜单、弹出框和工具提示都依赖于它来定位。如果您不打算使用这些组件,可以在此处省略 Popper。
npm i --save bootstrap @popperjs/core安装其他依赖项。除了 Vite 和 Bootstrap 之外,我们还需要另一个依赖项 (Sass) 来正确导入和捆绑 Bootstrap 的 CSS。
npm i --save-dev sass现在我们已经安装和设置了所有必要的依赖项,我们可以开始创建项目文件和导入 Bootstrap。
项目结构
我们已经创建了文件夹并初始化了 npm。现在我们还将创建文件夹、样式表和 JavaScript 文件来完善项目结构。从 运行以下作,或手动创建如下所示的文件夹和文件结构。my-projectsrcmy-project
mkdir {src,src/js,src/scss}
touch src/index.html src/js/main.js src/scss/styles.scss vite.config.js
完成后,您的完整项目应如下所示:
my-project/
├── src/
│ ├── js/
│ │ └── main.js
│ └── scss/
│ | └── styles.scss
| └── index.html
├── package-lock.json
├── package.json
└── vite.config.js
此时,一切都在正确的位置,但 Vite 无法工作,因为我们还没有填写我们的。vite.config.js
配置 Vite
安装依赖项并准备好我们的项目文件夹以开始编码后,我们现在可以配置 Vite 并在本地运行我们的项目。
在编辑器中打开vite.config.js。由于它是空白的,我们需要向其添加一些样板配置,以便我们可以启动我们的服务器。配置的这一部分告诉 Vite 在哪里查找我们项目的 JavaScript 以及开发服务器应该如何运行(从具有热重载的文件夹中拉取)。src
import { resolve } from 'path'
export default {
root: resolve(__dirname, 'src'),
build: {
outDir: '../dist'
},
server: {
port: 8080
},
// Optional: Silence Sass deprecation warnings. See note below.
css: {
preprocessorOptions: {
scss: {
silenceDeprecations: [
'import',
'mixed-decls',
'color-functions',
'global-builtin',
],
},
},
},
}注意:使用最新版本的 Dart Sass 编译源 Sass 文件时,会显示 Sass 弃用警告。这不会阻止编译或使用 Bootstrap。我们正在进行长期修复,但与此同时,这些弃用通知可以忽略。
接下来我们填写 src/index.html。这是 Vite 将在浏览器中加载的 HTML 页面,以利用捆绑的 CSS 和 JS,我们将在后面的步骤中添加到其中。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Bootstrap w/ Vite</title>
<script type="module" src="./js/main.js"></script>
</head>
<body>
<div class="container py-4 px-3 mx-auto">
<h1>Hello, Bootstrap and Vite!</h1>
<button class="btn btn-primary">Primary button</button>
</div>
</body>
</html>我们在这里将一些 Bootstrap 样式与 and 一起包括一些,以便我们看到 Vite 何时加载 Bootstrap 的 CSS。div class="container"<button>
现在我们需要一个 npm 脚本来运行 Vite。打开并添加如下所示的脚本(您应该已经拥有测试脚本)。我们将使用此脚本来启动本地 Vite 开发服务器。package.jsonstart
{
// ...
"scripts": {
"start": "vite",
"test": "echo "Error: no test specified" && exit 1"
},
// ...
}最后,我们可以启动 Vite。从终端的文件夹中,运行新添加的 npm 脚本:my-project
npm start
在本指南的下一节也是最后一节中,我们将导入 Bootstrap 的所有 CSS 和 JavaScript。
导入 Bootstrap
导入 Bootstrap 的 CSS。添加以下内容以导入 Bootstrap 的所有源 Sass。src/scss/styles.scss
// Import all of Bootstrap’s CSS
@import "bootstrap/scss/bootstrap";如果需要,您也可以单独导入我们的样式表。阅读我们的 Sass 导入文档了解详细信息。
接下来,我们加载 CSS 并导入 Bootstrap 的 JavaScript。添加以下内容以加载 CSS 并导入 Bootstrap 的所有 JS。Popper 将通过 Bootstrap 自动导入。src/js/main.js
// Import our custom CSS
import '../scss/styles.scss'
// Import all of Bootstrap’s JS
import * as bootstrap from 'bootstrap'您还可以根据需要单独导入 JavaScript 插件,以减小捆绑包大小:
import Alert from 'bootstrap/js/dist/alert';
// or, specify which plugins you need:
import { Tooltip, Toast, Popover } from 'bootstrap';阅读我们的 JavaScript 文档,了解有关如何使用 Bootstrap 插件的更多信息。
你完成了! 🎉完全加载 Bootstrap 的源 Sass 和 JS 后,您的本地开发服务器现在应该如下所示:
现在您可以开始添加要使用的任何 Bootstrap 组件。请务必查看完整的 Vite 示例项目,了解如何包含额外的自定义 Sass 并通过仅导入您需要的 Bootstrap CSS 和 JS 部分来优化您的构建。

