2016-11-16 2 views
0

Ich versuche, meinen Schluck richtig mit Autoprefixer, Sass und Browser-Sync zu arbeiten, aber ich habe ein paar Probleme.schlucke, browsersync, sass, autoprefixer funktioniert nicht

stelle ich die Gulpfile.js so zusammen:

var gulp = require('gulp'), 
plumber = require('gulp-plumber'), 
rename = require('gulp-rename'); 
var autoprefixer = require('gulp-autoprefixer'); 
var sass = require('gulp-sass'); 
var browserSync = require('browser-sync'); 

gulp.task('browser-sync', function() { 
    browserSync({ 
    server: { 
     baseDir: "./" 
    } 
    }); 
}); 

gulp.task('bs-reload', function() { 
    browserSync.reload(); 
}); 

gulp.task('styles', function(){ 
    gulp.src(['src/**/*.sass']) 
    .pipe(plumber({ 
     errorHandler: function (error) { 
     console.log(error.message); 
     this.emit('end'); 
    }})) 
    .pipe(sass()) 
    .pipe(autoprefixer('last 2 versions')) 
    .pipe(gulp.dest('assets/css/')) 
    .pipe(browserSync.reload({stream:true})) 
}); 


gulp.task('default', ['browser-sync'], function(){ 
    gulp.watch("src/**/*.sass", ['styles']); 
    gulp.watch("*.html", ['bs-reload']); 
}) 

ich dies von einer Website einsehen. Ich ändere nur die .scss in .sass

Die ganze Idee von dem, was ich wollte, war eine Karte namens "scr", wo ich meine .sass-Dateien, und das sollte kompilieren in den Ordner/Assets/CSS wo ist sollte eine .css-Datei werden.

Ich habe alles in meinem Hauptverzeichnis installiert, wo meine index.html, gulpfile.js und package.json gespeichert ist.

Aber jetzt arbeite ich in src/css/main.sass, nach dem Speichern wird nichts passieren. Also rate ich es sieht keine Änderungen und wird nicht kompilieren? Ja, ich habe die main.css in meinem index.html verbunden

Ich hoffe, dass Sie mir helfen können und vielleicht erklären, was schief gelaufen ist, so dass vielleicht ein Tag verstehe ich dies.

+0

Ich reparierte es, änderte die Pfade zu statt **/*. Sass Ich schrieb den ganzen Pfad und jetzt funktioniert es. Ich denke Schluck mag nicht Verstecken. – SanderS

Antwort

0

dazu ändern:

var browserSync = require("browser-sync").create(); 

und lassen Sie uns wissen, ob das funktioniert.

+0

Es tut mir leid, aber Browsersync ist nicht das Problem. Aus irgendeinem Grund sass nicht kompilieren. aber wenn ich Änderungen an der .html Datei mache, wird browsersync aktualisiert. – SanderS

0

wie wurden vorherigen erwähnt

var browserSync = require("browser-sync").create(); 

Und Sie vergessen "init" nach browserSync zu setzen, wenn Sie Server erstellen.

browserSync.init({ 
    server: 
    { 
     baseDir: "./" 
    } 
}); 
Verwandte Themen