2017-01-30 1 views
2

SOLUTION:Gulp pas la compilation SASS mais pas montrant des erreurs

_styles.scss à test.scss Changement de nom et _styles.css à test.css le fixe. Pourquoi?


Cela fonctionnait bien plus tôt. Maintenant, rien n'est compilé. Les fichiers CSS ne sont pas créés et sont vides ou non mis à jour.

terminal:

[email protected]:/var/www/html/mg/app/design/frontend/Training/default$ sudo gulp default 
[sudo] password for asd: 
[14:50:48] Using gulpfile /var/www/html/mg/app/design/frontend/Training/default/gulpfile.js 
[14:50:48] Starting 'default'... 
[14:50:48] Finished 'default' after 14 ms 
^C 
[email protected]:/var/www/html/mg/app/design/frontend/Training/default$ sudo gulp styles 
[14:50:56] Using gulpfile /var/www/html/mg/app/design/frontend/Training/default/gulpfile.js 
[14:50:56] Starting 'styles'... 
[14:50:56] Finished 'styles' after 13 ms 
[email protected]:/var/www/html/mg/app/design/frontend/Training/default$ sudo gulp pub 
[14:51:02] Using gulpfile /var/www/html/mg/app/design/frontend/Training/default/gulpfile.js 
[14:51:02] Starting 'pub'... 
[14:51:02] Finished 'pub' after 12 ms 

gulpfile.js:

var gulp = require('gulp'); 
var sass = require('gulp-sass'); 

gulp.task('styles', function() { 
    gulp.src('web/sass/**/*.scss') 
     .pipe(sass().on('error', sass.logError)) 
     .pipe(gulp.dest('web/css/')); 
}); 

gulp.task('pub', function() { 
    gulp.src('web/sass/**/*.scss') 
     .pipe(sass().on('error', sass.logError)) 
     .pipe(gulp.dest('../../../../../pub/static/frontend/Scandi/default/en_US/css/')); 
}); 

gulp.task('default', function() { 
    gulp.watch('web/sass/**/*.scss',['styles']); 
}); 

enter image description here

+0

Je pense qu'il devrait être '.pipe (SASS()) .on ('erreur', sass.logError)' au lieu de '.pipe (sass(). on ('erreur', sass.logError))' – Sergeon

+0

@Sergeon n'a rien changé. – Rudolph

+0

Le fichier sass principal ne doit pas avoir un trait de soulignement dans son nom. '_styles.scss' devrait être' styles.scss' - car ce n'est pas un partial. – jacmoe

Répondre

2

Gulp-SASS compilera heureusement tout ce qui est pas automatiquement chaque fois que partiel Sass change. Par défaut, chaque fichier Sass précédé d'un trait de soulignement est un partial et est destiné à être importé dans un ou plusieurs fichiers maîtres Sass.

En pratique, cela signifie que vous avez besoin d'au moins un fichier Sass non précédé d'un trait de soulignement pour que la compilation fonctionne correctement.

Dans votre cas, renommez simplement _styles.scss en styles.scss et cela devrait aboutir à styles.css dans votre répertoire CSS cible. :)

Partials vous permet d'organiser votre code source Sass de façon très soignée, voir The Sass Way - How to structure a Sass project