2017-06-01 3 views
0

Ich teste mit npm Skripten, um meine Abhängigkeit von Gulp zu entfernen. Ich beginne einfach mit einem benutzerdefinierten Hauptskript namens watch. Dieses Skript wird letztendlich alle Skripte ausführen, die mit dem Namen watch vorangestellt sind; zum Beispiel watch:styles. Mein Skript watch:styles verwendet node-sass, um meine CSS-Dateien zu kompilieren. Das funktioniert. Mein nächster Schritt ist jedoch das Erstellen eines postwatch:styles-Skripts, das die neu erstellten .css-Dateien über PostCSS und Autoprefixer ausführt.NPM Scripts Post Hook nicht feuernd

Das Problem, obwohl, ist meine postwatch:styles Hook nie ausgelöst wird, um zu laufen.

package.json

{ 
    "name": "npm-scripts-test", 
    "version": "1.0.0", 
    "description": "", 
    "main": "index.js", 
    "scripts": { 
    "watch": "npm-run-all --parallel watch:*", 
    "watch:styles": "node-sass -w ./src/styles/main.scss ./dist/assets/styles/app.css", 
    "postwatch:styles": "postcss -u autoprefixer --no-map ./dist/assets/styles/app.css -o ./dist/assets/styles/app.css" 
    }, 
    "author": "", 
    "license": "ISC", 
    "devDependencies": {}, 
    "dependencies": { 
    "autoprefixer": "^7.1.1", 
    "node-sass": "^4.5.3", 
    "postcss-cli": "^4.0.0", 
    "yarn-run-all": "^3.1.1" 
    }, 
    "browserslist": [ 
    "last 3 versions" 
    ] 
} 

Ratschläge oder Anregungen, warum mein Post Haken Brennen nicht wahr? Die ursprüngliche watch:styles läuft gut. Wenn ich yarn postwatch:styles manuell ausführen, wird das Skript ordnungsgemäß ausgeführt. Könnte es einen stummen Fehler auf meinem watch:styles geben, der verhindert, dass der Haken abfeuert?

Jeder Rat wird sehr geschätzt werden.

Antwort

1

Da watch:styles im Watch-Modus node-sass aufruft, wird der Befehl nie zurückgegeben, bleibt jedoch aktiv und wartet auf die Änderung Ihrer Dateien.

Und da es keine positive Rückkehr gibt, postwatch:styles wird nie aufgerufen werden.

Sie sollten einen anderen Ansatz vielleicht watching your files with watch oder nodemon versuchen.

+0

Das macht so viel Sinn. Vielen Dank! – Yuschick