Cum se compilează fișierele SASS .scss în cea mai elementară metodă (fără framework)

Ce face compilarea?

Compilarea fișierelor Sass transformă foile de stil cu sintaxa specifică Sass, cum ar fi cuibări de selectori și mix-uri, în CSS normal care poate fi analizat de browsere.

Cum îl instruiesc să compileze fișierele .scss din dosarul de mai sus în dosarul public/build/css/?

Din moment ce folosiți deja Bower care este un pachet Node.js, presupun că nu aveți nicio problemă în a folosi pachetul Node.js node-sass în loc de versiunea originală Ruby.

În primul rând, instalați pachetul folosind npm i -D node-sass. Apoi, creați un nou script în interiorul package.json al proiectului dvs.:

main.scss este acum punctul dvs. de intrare în care importați Bootstrap și celelalte foi de stil.

// I don't know whether this path is correct// Just find out the location of "_bootstrap.scss" and then create the relative path@import "../../../bower_components/bootstrap-sass/assets/stylesheets/_bootstrap.scss";/* Your custom SCSS */

În cele din urmă, pentru a rula efectiv compilarea, executați npm run compile-sass în terminalul dvs.

Trebuie să configurez noi fișiere .scss sau pot seta astfel încât să le adaug pur și simplu la acel folder sass?

Din moment ce nu îi spuneți niciodată lui node-sass să „compileze totul în interiorul acestui folder” și în schimb folosiți un fișier punct de intrare (main.js), atunci când doriți să includeți un fișier nou, pur și simplu adăugați o directivă @import cu o cale relativă către acesta.

Bonus, cum îi spun să minifice sau nu fișierul de ieșire (astfel încât să pot experimenta ambele moduri)?

Pentru a minifica fișierul main.css rezultat, recomand csso. Puteți instala pachetul său CLI folosind npm i -D csso-cli și apoi adăugați un alt script la package.json:

"minify-css": "csso public/build/css/main.css public/build/css/main.min.css"

Puteți apoi rula acel script folosind npm run minify-css. Fișierul minificat va fi emis ca main.min.css.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.