Skip to content

Commit

Permalink
Add SASS_PATH instructions to Sass stylesheet docs
Browse files Browse the repository at this point in the history
A bunch of issues popped up with people asking how to have SASS/SCSS imports the way the would expect normally.
Turns out `node-sass` supports the SASS_PATH variable that we can use. This PR adds that to the documentation.
  • Loading branch information
jayantbh committed Dec 4, 2018
1 parent 5352a0c commit ae4a949
Showing 1 changed file with 12 additions and 2 deletions.
14 changes: 12 additions & 2 deletions docusaurus/docs/adding-a-sass-stylesheet.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,20 @@ This will allow you to do imports like
@import '~nprogress/nprogress'; // importing a css file from the nprogress node module
```

> **Tip:** You can opt into using this feature with [CSS modules](adding-a-css-modules-stylesheet.md) too!
> **Note:** You must prefix imports from `node_modules` with `~` as displayed above.
`node-sass` also supports the `SASS_PATH` variable.

To use imports relative to a path you specify, and from `node_modules` without adding the `~` prefix, you can add a [`.env` file](https://github.com/facebook/create-react-app/blob/master/docusaurus/docs/adding-custom-environment-variables.md#adding-development-environment-variables-in-env) at the project root with the variable `SASS_PATH=node_modules:src`. To specify more directories you can add them to `SASS_PATH` separated by a `:` like `path1:path2:path3`.

If you set `SASS_PATH=node_modules:src`, this will allow you to do imports like
```scss
@import 'styles/colors'; // assuming a styles directory under src/, where _colors.scss partial file exists.
@import 'nprogress/nprogress'; // importing a css file from the nprogress node module
```

> **Tip:** You can opt into using this feature with [CSS modules](adding-a-css-modules-stylesheet.md) too!
> **Note:** If you're using Flow, override the [module.file_ext](https://flow.org/en/docs/config/options/#toc-module-file-ext-string) setting in your `.flowconfig` so it'll recognize `.sass` or `.scss` files. You will also need to include the `module.file_ext` default settings for `.js`, `.jsx`, `.mjs` and `.json` files.
>
> ```
Expand Down

0 comments on commit ae4a949

Please sign in to comment.