跳到主要内容

添加 Bootstrap 支持

尽管你无需使用任何特定的库就能将 Bootstrap 和 React 应用集成,但通常来说比包装 Bootstrap jQuery 插件要简单一些。React Bootstrap 是最受欢迎的选项,它力求与 Bootstrap 完全对等。reactstrap 对于寻求以部分功能为代价,追求代码小而美的项目来说也是一个不错的选择。

每个项目的文档站点都拥有详细的安装与使用说明。它们都需要依赖 Bootstrap css 文件,因此需要先安装它:

npm install --save bootstrap

或者你可以使用 yarn 代替:

yarn add bootstrap

src/index.js 文件的开头引入 Bootstrap CSS 和可选的 Bootstrap 主题 CSS:

import 'bootstrap/dist/css/bootstrap.css';
// 将所有其他导入内容放在下面,以便你的 CSS 组件样式优先于默认样式。

使用自定义主题

注意:该功能仅支持 react-scripts@2.0.0 及以上版本。

有时你可能需要调整 Bootstrap(或与其相似的包)的视觉样式。

react-scripts@2.0.0 开始,你可以导入 .scss 文件。这样就可以将包的内置 Sass 变量用于全局样式。

要在 Create React App 中启用 scss,你需要先安装 node-sass

npm install --save node-sass

或者你可以使用 yarn 代替:

yarn add node-sass

要自定义 Bootstrap,请创建一个名为 src/custom.scss(或类似文件)的文件,然后导入 Bootstrap 源样式表。在导入文件 添加覆盖样式文件。你可以参考Bootstrap 文档 以获取可用变量的名称。

// 在导入前覆盖默认变量
$body-bg: #000;

// 导入 Bootstrap 及其默认变量
@import '~bootstrap/scss/bootstrap.scss';

注意:如上所示,你必须在 node_modules 的导入前面加上 ~

最后,在你的 src/index.js 文件的开头导入新建的 .scss 文件,而不是默认的 Bootstrap .css,例如:

import './custom.scss';