cachen/zusammenführen Ich habe eine Reihe von verschiedenen CSS-Dateien in css/
Ordner mit Hilfe von libsass generiert. Auch habe ich bereits in css/
Ordner platziert, um die Normalisierung von CSS in allen Browsern zu ermöglichen. Ich verwende npm als Build-Tool, und mein package.json
besteht so etwas wie dieses:css-Dateien in der Reihenfolge
{
.....
"scripts": {
"test": "npm run lint",
"lint": "csslint css/*.css",
"build": "node-sass sass/ -o css/",
"postbuild": "cat css/*.css | cleancss -o css/main.min.css"
},
.....
}
Am Build-Schritt Ich Erzeugung
css
Dateien und in Post-Build-Schritt ich verketten alle CSS-Dateien in eine verfälschte CSS-Datei.
Aber während Post-Build-Schritt sollte der Inhalt der Datei vor anderen CSS-Datei Inhalt kommen, aber das Verhalten ist inkonsistent. Ich muss sicherstellen, dass normalize Zeug vor allen anderen CSS-Dateien kommt, jeder Kopf wäre hilfreich.
TLDR-Verkettung von Bündel von CSS-Dateien Ergebnisse in normalize.css wird in mittleren oder letzten angefügt. Ich brauche es am Anfang der verketteten CSS-Datei.
Danke.
tut 'cat' zeigt Dateien in alphabetischer Reihenfolge ihrer Dateinamen? –
@AbhinavGauniyal Nein, 'cat' verwendet die Reihenfolge seiner Argumente, also hier zuerst' normalize.css' und dann die Reihenfolge von 'ls', die standardmäßig in alphabetischer Reihenfolge ist. (Siehe http://stackoverflow.com/questions/878249/unixs-ls-sort-by-name). Wenn Sie jedoch bemerken, dass dies nicht der Fall ist, verwenden Sie einfach 'ls -I normalize.css * .css | sort' – Jerska
okay ... 'ls -I normalize.css * .css' selbst im Terminal gibt alle CSS-Dateien einschließlich' normalize.css', also den ganzen Zweck zu besiegen. Kannst du bitte nachsehen? –