Antworten:
Der _ (Unterstrich) ist ein Teil für scss. Das bedeutet, dass das Stylesheet in ein Haupt-Stylesheet importiert wird (@import), dh styles.scss. Der Vorteil bei der Verwendung von Partials besteht darin, dass Sie Ihren Code mit vielen Dateien organisieren können und alles in einer einzigen Datei kompiliert wird.
import '_file';
und import 'file';
macht das gleiche richtig?"
_
? Ich denke darüber nach, den Unterstrich aus meinen Dateinamen zu entfernen. Ob eine Sass-Datei ein Teil ist (dh ein importierbarer Code), hängt von ihrem Speicherort in der Architektur Ihres Projekts ab und nicht davon, wie die Datei benannt ist.
_
s definitiv nicht, wenn Sie Ihr Projekt in einer vernünftigen Weise strukturiert haben.
Eine Sass-Datei, die mit einem Unterstrich beginnt, ist ein Teil. Dies ist eine gute Möglichkeit, Ihre Stile in logische Abschnitte zu unterteilen. Diese Dateien werden bei der Kompilierung alle zusammengeführt, wenn Sie sie verwenden @import
.
Aus dem Sass-Sprachführer:
Sie können teilweise Sass-Dateien erstellen, die kleine CSS-Schnipsel enthalten, die Sie in andere Sass-Dateien aufnehmen können. Dies ist eine großartige Möglichkeit, Ihr CSS zu modularisieren und die Wartung zu vereinfachen. Ein Teil ist einfach eine Sass-Datei mit einem führenden Unterstrich. Sie könnten es so etwas wie _partial.scss nennen. Der Unterstrich weist Sass darauf hin, dass die Datei nur eine Teildatei ist und nicht in eine CSS-Datei generiert werden sollte. Sass-Partials werden mit der @ import-Direktive verwendet.
Wenn Sie "_" vor dem Dateinamen einfügen, wird es nicht in CSS generiert, es sei denn, Sie importieren es in eine andere Sass-Datei, die nicht teilweise ist.
Angenommen, Ihre Ordnerstruktur ist so
/scss
style.scss
_list.scss
/css
wenn Sie den Befehl ausführen
sass --watch scss:css
Es werden nur die Dateien style.css und style.css.map erstellt. Der sass-Compiler lässt _list.scss weg, ohne den Inhalt in eine CSS-Datei zu konvertieren.
/scss
style.scss
_list.scss
/css
style.css
style.css.map
Die einzige Möglichkeit, Partials zu verwenden, besteht darin, sie mit in eine andere .scss-Datei zu importieren
@import 'list.scss';
Wenn Sie das '_' vor _list.scss entfernen, lautet das Ergebnis des Befehls
/scss
style.scss
list.scss
/css
style.css
style.css.map
list.css
list.css.map
Der Hauptzweck der Verwendung von Partials besteht darin, unseren CSS-Code in mehrere Teile zu zerlegen, die einfacher zu warten sind. Hoffe das hilft. Vielen Dank.
Dateien mit _ (Unterstrich) werden vom Compiler ignoriert. Alle diese Dateien werden jedoch in eine einzelne SCSS-Hauptdatei (dh styles.scss) importiert, bei der es sich tatsächlich um die kompilierte Datei handelt (der Name enthält kein _ (Unterstrich)).
Das endgültige Ziel besteht darin, nur eine SCSS-Datei zu kompilieren und dadurch nur eine CSS-Datei zu haben, was verschiedene Vorteile hat.
Die Verwendung des Watchers von Node-Sass in einer Node-Umgebung führt zu Fehlermeldungen, wenn Sie auf das Unterstrichpräfix verzichten (siehe https://github.com/sass/node-sass/issues/2762)
import '_file';
undimport '_file';
macht das gleiche richtig?