2017-06-20 59 views
0

我正在尝试设置gulp并观察文件更改,然后重新加载browserSync。修改main.sass文件工作正常,但在main.sass文件中导入修改后,gulp不会看到它。同样碰巧帕格,修改包括隐藏的吞咽手表。Gulp不注意进口sass模块

我已经试过什么:

  1. 的includepaths在某些方面

  2. 试图gulp.src写()一样。“桌面/ CSS/**/* Sass的路径,但它导致导入的模块被编译在一个单独的文件中,这是错误的行为(不像我预料的那样,令人遗憾)。

我导入的文件中desktop/css/modules/*.sass,进入SASS文件(main.sass)是desktop/css/main.sass

我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}`) 
    }) 
}) 

回答

0

哎呀,问题是在手表的方法:我只看过。桌面/ css文件夹中的sass文件,其中只有main.sass文件。和帕格一样。希望它能帮助别人。