Ich muss mehrere SASS-Dateien in einem Verzeichnis in mehrere entsprechende CSS-Dateien in einem anderen Verzeichnis kompilieren. ZB:Kompilieren Sie mehrere SASS-Dateien in mehreren Verzeichnissen in mehrere CSS-Dateien in einem separaten Verzeichnis
src/folder1/file1.scss --compiles to-- public/file1.css
src/folder2/file2.scss --compiles to-- public/file2.css
Hier ist der Befehl, die ich benutze:
./src/*/*.scss ./public
Vor dies zu versuchen, war ich alle .scss Dateien anstelle Kompilieren nur ./src/*/*.scss
verwendet und wurde immer die entsprechenden CSS-Dateien in ihren jeweiligen Verzeichnissen. Der Versuch, diese in einem anderen Verzeichnis abzulegen, funktioniert jedoch nicht. Was stattdessen passiert, ist, dass eine der .scss-Dateien eine .scss-partielle Importanweisung in die .scss-Datei selbst importiert, eine .scss.map-Datei erstellt wird und danach nichts mehr passiert.
Hat SASS überhaupt diese Fähigkeit? Ich habe verschiedene Variationen des obigen Befehls ausprobiert und gelegentlich sehe ich einen Fehler, der besagt, dass "public" ein Verzeichnis ist, was mich glauben lässt, dass SASS kein Verzeichnis als Ausgabe erlaubt. Die Dokumentation enthält nur eine einzige Ausgabedatei als Beispiel für das Kompilieren von SASS (d. H. Sass input.scss output.css).
Ich bin mit NPM-Skripte als Build-Tool also bitte keine Grunt, Gulp, usw.
* Eine andere Sache zu beachten. Ich habe gerade versucht sass --watch
anstelle des normalen Kompilierungsbefehl verwenden, und es ist eine Art tut, was ich brauche, um es zu:
sass --watch src:public
Das einzige Problem, das ich mit diesem habe, ist, dass es nicht nur schafft CSS-Dateien in der Öffentlichkeit. Stattdessen erstellt es einen Ordner und eine .css- und .css.map-Datei im Ordner. Es scheint, dass SCSS für jede .scss-Datei einen Pfad entsprechend dem relativen Pfad hinzufügt, der von watch
durchlaufen wird. Diese Lösung wäre ideal, wenn Sie diesen zusätzlichen Ordner nicht erstellen würden.
Haben Sie 'sass --update scss: css' versucht, für den Fall, dass Sie sich in einem Ordner befinden, der ** scss ** und ** css ** Ordner enthält, wie ** assets/scss **, ** assets/CSS **? Referrer: https://stackoverflow.com/questions/19439914/how-to-convert-directory-sass-scss-to-css-via-command-line – vee