我在尝试让LiveReload与Gulp Connect插件一起工作时遇到问题。
下面是我的gulpfile.js
我的html文件与gulpfile.js位于同一目录中,所有的sass文件都从同一文件夹(smacss)导入到/sass/styles.scss中,而其他部分文件则导入到/sass/modules/*.scss中
感谢您的帮助
var gulp = require('gulp');
var sass = require('gulp-sass');
var connect = require('gulp-connect');
gulp.task('connect', function(){
connect.server({
root: '.',
livereload: true
});
});
// keeps gulp from crashing for scss errors
gulp.task('sass', function () {
return gulp.src('./sass/*.scss')
.pipe(sass({ errLogToConsole: true }))
.pipe(gulp.dest('./css'));
});
gulp.task('livereload', function (){
gulp.src('.')
.pipe(connect.reload());
});
gulp.task('watch', function () {
gulp.watch('./sass/**/*.scss', ['sass']);
gulp.watch('.', ['livereload']);
});
gulp.task('default', ['connect', 'watch', 'sass']);发布于 2017-07-17 20:26:49
不确定您的根路径在这里是否有效。你可以试试root: './'或者只试试root: '/'吗?
并且gulp.watch和gulp.src可能需要文件路径而不是目录路径。你可以试试gulp.src('./*')和gulp.watch('./*')吗?
发布于 2017-08-10 13:27:03
这对我来说是有效的:
var gulp = require('gulp');
var sass = require('gulp-sass');
var sourcemaps = require('gulp-sourcemaps');
var prefix = require('gulp-autoprefixer');
// POST CSS
var postcss = require('gulp-postcss');
var cssnext = require('postcss-cssnext');
var connect = require('gulp-connect');
gulp.task('myStyles', function () {
var processors = [
cssnext()
];
gulp.src('sass/*.scss')
.pipe(sourcemaps.init())
.pipe(sass({outputStyle: 'expanded'}))
.pipe(sass().on('error', sass.logError))
.pipe(sourcemaps.write('.', {
includeContent: false,
sourceRoot: '../sass'
}))
.pipe(gulp.dest('css'))
.pipe(connect.reload());
});
gulp.task('connect', function() {
connect.server({
livereload: true
});
});
gulp.task('watchMyStyles', function() {
gulp.watch('sass/*.scss', ['myStyles']);
});
gulp.task('default', ['watchMyStyles', 'connect']);
gulp.task('server', [ 'connect']);https://stackoverflow.com/questions/45135295
复制相似问题