Is it possible to make sass listen to a directory with many sass files and generate one CSS file? I have found a way by including many sass files into one (style.scss):
@import "scss/header"; @import "scss/footer";
And then run the following code:
sass --watch style.scss:style.css
but the problem is that I have to change that file before I generate a new CSS file.
Sass Importing Files Just like CSS, Sass also supports the @import directive. The @import directive allows you to include the content of one file in another.
To use variables across multiple files in SASS is carried out by @import rule of SASS. @import rule which import Sass and CSS stylesheets for providing variables, @mixins and functions. Such that combine all stylesheets together for compiled css.
If you watch the directory, sass will be able to notice changes in @imported files, and update dependent files.
style.scss:
@import "header"; @import "footer";
And do:
sass --watch .
It will compile all files in the directory to .css; ignoring files whose name start with a _
.
I you modify _header.scss or _footer.scss, if will update style.scss too.
You can also output in an other directory:
sass --watch .:output_dir/
You can tell SASS to watch an entire folder with:
sass --watch application/sass:public/stylesheets
If you import all your partial files, this should generate one file. Every time you edit a file in the folder, the CSS files will be generated automatically.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With