我正在积极地同时使用这两种方法,而且效果很好。我在 browsersync 的服务器端口上运行它,它只是注入加载所需的脚本,并使用正确的重新加载命令,它只是根据需要刷新。
这是我的 gulpfile.js 中的相关部分:
gulp.task('serve', ['css'], () => {
'use strict';
browserSync.init({
port: 8080,
server: './styleguide',
notify: false
});
gulp.watch('src/**/*.css', ['css']);
gulp.watch('src/**/*.md', ['css']).on('change', browserSync.reload);
});
gulp.task('css', () => {
'use strict';
const options = {
browsers: ['last 2 versions']
};
const processors = [
stylelint,
postcssImport({ glob: true }),
apply,
simpleVars,
customMedia,
customSelectors,
cssVariables,
nested,
autoprefixer({ browsers: options.browsers }),
mdcss({
theme: mdcssGithub({
title: 'Styleguide',
examples: {
css: ['style.css'],
bodyjs: ['js/jquery-2.2.3.min.js']
}
}),
assets: ['js']
})
];
return gulp.src('./src/*.css')
.pipe(sourcemaps.init())
.pipe(postcss(processors))
.pipe(sourcemaps.write('.'))
.pipe(gulp.dest('styleguide'))
.pipe(browserSync.stream());
});
gulp.task('default', ['serve']);
然后转到http://localhost:8080