为什么不使用browser-sync?很简单,不太复杂。
他是自动打开浏览器窗口,默认端口为 3000。
这是一个简单的使用示例:
var gulp = require(''gulp),
browserSync = require('browser-sync').create();
// Static server
gulp.task('browser-sync', function() {
browserSync.init({
server: {
baseDir: "./flex_grid/"
}
});
});
这是一个简单的 sass 编译使用示例:
var gulp = require('gulp'),
sass = require('gulp-ruby-sass'),
watch = require('gulp-watch'),
sourcemaps = require('gulp-sourcemaps'),
autoprefixer = require('gulp-autoprefixer');
var browserSync = require('browser-sync').create();
gulp.task('default', ['serve']);
gulp.task('serve', ['sass'], function() {
browserSync.init({
server: "./flex_grid/"
});
gulp.watch("src/sass/*.scss", ['sass']);
gulp.watch("flex_grid/*.html").on('change', browserSync.reload);
});
gulp.task('sass', function() {
return sass(
'src/sass/flex_grid.scss', {
style: 'expanded',
sourcemap: true
}).on('error', function (err) {
console.error('Error! ', err.message);
})
.pipe(autoprefixer({
browsers: [ '> 0%', 'last 2 versions', 'Firefox ESR', 'Opera 12.1' ],
cascade: false
}))
.on('error', function (err) {
console.error('Error! ', err.message);
})
.pipe(sourcemaps.write('.', {
includeContent: false
}))
.on('error', function (err) {
console.error('Error! ', err.message);
})
.pipe(gulp.dest('flex_grid'))
.pipe(browserSync.stream());
});