Skip to main content Skip to docs navigation

使用我们的文档构建脚本和测试帮助开发Bootstrap。

工具设置

引导使用npm脚本以构建文档并编译源文件。 我们的 package.json 包含这些脚本,用于编译代码、运行测试等。 这些不打算在我们的存储库和文档之外使用。

要使用我们的构建系统并在本地运行我们的文档,你需要Bootstrap的源文件和Node的副本。按照以下步骤操作,你应该已经做好了运行的准备:

  1. 下载并安装Node.js,用于管理我们的依赖关系。
  2. 要么[下载Bootstrap的源代码]](https://github.com/twbs/bootstrap/archive/v5.3.2.zip),要么fork并cloneBootstrap的存储库
  3. 导航到根目录“/bootstrap”,并运行“npm install”以安装我们在[package.json]({{<param repo>}}/bob/v{}<paramcurrent_version>}}/package.json)中列出的本地依赖项。

完成后,你将能够运行从命令行提供的各种命令。

使用npm脚本

我们的 package.json 包括许多开发项目的任务。 运行npm-Run查看终端中的所有npm脚本。 Primary tasks include:

Task Description
npm start Compiles CSS and JavaScript, builds the documentation, and starts a local server.
npm run dist 使用已编译的文件创建dist/目录。 使用SassAutoprefixer,和terser.
npm test 运行npm run dist 后在本地运行测试
npm run docs-serve 在本地构建和运行文档。
通过我们的starter 项目,通过npm开始使用Bootstrap前往Sass&JS示例模板存储库,了解如何在自己的npm项目中构建和自定义Bootstrap。 包括Sass编译器、Autoprefixer、Styleint、PurgeCSS和Bootstrap 图标。

Sass

Bootstrap使用Dat Sass用于将我们的Sass源文件编译为CSS文件(包含在我们的构建过程中),如果你使用自己的资产管道编译Sass,我们建议你也这样做。 我们以前在Bootstrap v4中使用Node Sass,但LibSass和在此基础上构建的包,包括Node Sass现在都不推荐使用了。

Dart Sass使用10的舍入精度,并且出于效率原因不允许调整该值。 在进一步处理生成的CSS时,例如在缩小过程中,我们不会降低此精度,但如果你选择这样做,我们建议你保持至少6的精度,以防止浏览器舍入问题。

Autoprefixer

引导使用Autoprefixer(包含在我们的构建过程中),以便在构建时自动将供应商前缀添加到一些CSS属性中。 这样做可以让我们一次性编写CSS的关键部分,同时消除对v3中的供应商混合插件的需求,从而节省了我们的时间和代码。

我们在GitHub存储库中的一个单独文件中维护通过Autoprefixer支持的浏览器列表。 有关详细信息,请参见 .browserslistrc

RTLCSS

引导使用RTCLS处理编译后的CSS并将其转换为RTL——基本上用相反的属性替换水平方向感知属性(例如“左填充”)。它允许我们只写一次CSS,并使用RTLCSS[控制]进行小的调整(https://rtlcss.com/learn/usage-guide/control-directives/)和value指令。

本地文档

在本地运行我们的文档需要使用Hugo,它通过Hugo-bin安装npm包。 Hugo是一个速度极快、可扩展性很强的静态站点生成器,它为我们提供了:basic includes、基于Markdown的文件、templates 等等。 以下是如何进行的过程:

  1. 运行上面的[tooling setup](#tooling setup)来安装所有依赖项。
  2. 从根目录/bootstrap中,在命令行中运行npm run docs-serve
  3. 打开http://localhost:9001/在你的浏览器中,voilà。

阅读Hugo的文档,了解有关使用Hugo的更多信息。

故障排除

如果在安装依赖项时遇到问题,请卸载所有以前的依赖项版本(全局和本地)。 然后,重新运行npm install