Odpowiedzi:
_ (Podkreślenie) jest częścią dla scss. Oznacza to, że arkusz stylów zostanie zaimportowany (@import) do głównego arkusza stylów, tj. Styles.scss. Zaletą korzystania z podrzędnych jest to, że możesz użyć wielu plików do zorganizowania kodu i wszystko zostanie skompilowane w jednym pliku.
import '_file';
i import 'file';
robi to samo, prawda?"
_
? Rozważam usunięcie podkreślenia z moich nazw plików. To, czy plik Sass jest częściowy (tj. Importowany fragment kodu), powinno zależeć od jego lokalizacji w architekturze projektu, a nie od tego, jak plik jest nazwany.
_
znaków, jeśli masz projekt uporządkowany w rozsądny sposób.
Plik Sass rozpoczynający się od podkreślenia jest podrzędny. To dobry sposób na podzielenie stylów na logiczne sekcje. Wszystkie te pliki są scalane podczas kompilacji, gdy używasz @import
.
Z przewodnika językowego Sass:
Możesz tworzyć częściowe pliki Sass, które zawierają małe fragmenty kodu CSS, które możesz dołączyć do innych plików Sass. To świetny sposób na modularyzację CSS i ułatwianie utrzymania. Częściowe to po prostu plik Sass o nazwie z początkowym podkreśleniem. Możesz nazwać to coś w rodzaju _partial.scss. Podkreślenie informuje Sassa, że plik jest tylko częściowym plikiem i nie powinien być generowany w pliku CSS. Części składowe Sass są używane z dyrektywą @import.
Kiedy dodasz „_” przed nazwą pliku, nie zostanie on wygenerowany w CSS, chyba że zaimportujesz go do innego pliku Sass, który nie jest częściowy.
załóżmy, że twoja struktura folderów jest taka
/scss
style.scss
_list.scss
/css
jeśli uruchomisz polecenie
sass --watch scss:css
zostaną utworzone tylko pliki style.css i style.css.map, kompilator sass pominie _list.scss bez konwertowania jego zawartości na plik CSS.
/scss
style.scss
_list.scss
/css
style.css
style.css.map
jedynym sposobem na użycie podszablonów jest zaimportowanie ich do innego pliku .scss z rozszerzeniem
@import 'list.scss';
jeśli usuniesz „_” przed _list.scss, wynik polecenia będzie
/scss
style.scss
list.scss
/css
style.css
style.css.map
list.css
list.css.map
Głównym celem używania podszablonów jest rozbicie naszego kodu CSS na kilka części, które są łatwiejsze w utrzymaniu. Mam nadzieję że to pomoże. Dzięki.
Pliki z _ (podkreśleniem) są ignorowane przez kompilator. Jednak wszystkie te pliki są importowane do pojedynczego, głównego pliku SCSS (tj. Styles.scss), który jest faktycznie kompilowanym plikiem (nie ma w nazwie znaku _ (podkreślenia))
Ostatecznym celem jest skompilowanie tylko jednego pliku SCSS, aw rezultacie tylko jednego pliku CSS, co ma różne zalety.
Również użycie obserwatora node-sass w środowisku węzła spowoduje wyświetlenie komunikatów o błędach, jeśli zrezygnujesz z prefiksu podkreślenia, zobacz https://github.com/sass/node-sass/issues/2762
import '_file';
iimport '_file';
robi to samo, prawda?