forked from facebook/create-react-app
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Adds instructions to README on how to customize Bootstrap with Sass (f…
…acebook#5211) * Adds instructions to create a Bootstrap theme with Sass * Update README.md * Update README.md * Update README.md
- Loading branch information
Showing
1 changed file
with
21 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -684,8 +684,8 @@ An alternative way of handling static assets is described in the next section. | |
One way to add SVG files was described in the section above. You can also import SVGs directly as React components. You can use either of the two approaches. In your code it would look like this: | ||
|
||
```js | ||
import { ReactComponent as Logo } from './logo.svg' | ||
const App = () => ( | ||
import { ReactComponent as Logo } from './logo.svg'; | ||
const App = () => ( | ||
<div> | ||
{/* Logo is an actual React component */} | ||
<Logo /> | ||
|
@@ -807,14 +807,28 @@ Now you are ready to use the imported reactstrap components within your componen | |
|
||
### Using a Custom Theme | ||
|
||
> Note: this feature is available with `[email protected]` and higher. | ||
Sometimes you might need to tweak the visual styles of Bootstrap (or equivalent package).<br> | ||
We suggest the following approach: | ||
As of `[email protected]` you can import `.scss` files. This makes it possible to use a package's built-in Sass variables for global style preferences. | ||
|
||
To customize Bootstrap, create a file called `src/custom.scss` (or similar) and import the Bootstrap source stylesheet. Add any overrides _before_ the imported file(s). You can reference [Bootstrap's documentation](http://getbootstrap.com/docs/4.1/getting-started/theming/#css-variables) for the names of the available variables. | ||
|
||
- Create a new package that depends on the package you wish to customize, e.g. Bootstrap. | ||
- Add the necessary build steps to tweak the theme, and publish your package on npm. | ||
- Install your own theme npm package as a dependency of your app. | ||
```scss | ||
// Override default variables before the import | ||
$body-bg: #000; | ||
|
||
// Import Bootstrap and its default variables | ||
@import '~bootstrap/scss/bootstrap.scss'; | ||
``` | ||
|
||
Here is an example of adding a [customized Bootstrap](https://medium.com/@tacomanator/customizing-create-react-app-aa9ffb88165) that follows these steps. | ||
> **Note:** You must prefix imports from `node_modules` with `~` as displayed above. | ||
Finally, import the newly created `.scss` file instead of the default Bootstrap `.css` in the beginning of your `src/index.js` file, for example: | ||
|
||
```javascript | ||
import './custom.scss'; | ||
``` | ||
|
||
## Adding Flow | ||
|
||
|