2017-06-20 1 views
0

J'essaie de configurer gulp et de regarder les fichiers changer puis recharger browserSync. Modification du fichier main.sass fonctionne bien, mais lors de l'importation dans les fichiers main.sass sont modifiés, gulp ne le voit pas. Il en est de même pour carlin, modifier includes est caché pour gulp-watch.Gulp ne surveille pas les modules sass importés

Ce que j'ai essayé:

  1. includePaths à certains égards

  2. essayé d'écrire dans gulp.src() chemin comme 'bureau/css/**/* sass', mais cela a causé que les modules importés ont été compilés dans un fichier séparé, ce qui est un mauvais comportement (pas comme je m'y attendais, malheureusement).

Mes fichiers importés sont desktop/css/modules/*.sass, fichier SASS d'entrée (main.sass) est desktop/css/main.sass

Mon gulpfile

import gulp from 'gulp' 
import sass from 'gulp-sass' 
import autoprefixer from 'gulp-autoprefixer' 
import cleanCSS from 'gulp-clean-css' 
import pug from 'gulp-pug' 
import pump from 'pump' 
import browserSync from 'browser-sync' 

const browserSyncServer = browserSync.create() 

gulp.task('desktop-styles',() => { 
    gulp.src('desktop/css/*.sass') 
    .pipe(sass({ includePaths: ['desktop/css/modules'] })) 
    .pipe(autoprefixer()) 
    .pipe(cleanCSS()) 
    .pipe(gulp.dest('desktop/build/css')) 
    .pipe(browserSyncServer.stream()) 
}) 

gulp.task('desktop-html',() => { 
    gulp.src('desktop/templates/*.pug') 
    .pipe(pug()) 
    .pipe(gulp.dest('desktop/build')) 
    .pipe(browserSyncServer.stream()) 
}) 

gulp.task('desktop', ['desktop-html', 'desktop-styles'],() => { 
    browserSyncServer.init({ 
    server: "./desktop/build" 
    }) 
    gulp.watch('desktop/templates/*.pug', ['desktop-html']).on('change', (e) => { 
    console.log(` HTML File ${e.path} has been ${e.type}`) 
    }) 
    gulp.watch('desktop/css/*.sass', ['desktop-styles']).on('change', (e) => { 
    console.log(` CSS File ${e.path} has been ${e.type}`) 
    }) 
}) 

Répondre

0

Oops, problème était dans la méthode de la montre: je regardais seulement. fichiers sass dans le dossier desktop/css, où est le fichier main.sass uniquement. Pareil avec un carlin. J'espère que ça va aider quelqu'un.