そのため、 gulp.jsを使用していくつかのタスクを管理および自動化styles
し、scss ファイルを css にコンパイルする特定のタスクと、livereload 統合を提供する gulp -connectプラグインを使用してサーバーを実行する特定のタスクがあります。
watch
また、変更を監視して livereload をトリガーするタスクもあります。
gulp.task('watch', function () {
gulp.watch([ stylesPath + '/**/*.scss'], ['styles']);
gulp.watch([ scriptsPath + '/**/*.coffee'], ['scripts']);
gulp.watch([
'./app/**/*.html',
'./app/assets/scripts/**/*.js',
'./app/assets/styles/**/*.css'
], connect.reload);
});
これは常に機能するとは限りません。実際には、より少ない回数で機能します。理由は本当にわかりません。私は .coffee ファイルと同じロジックを持っており、それはそれらに対して完全に機能します..しかし、私の css ファイルには機能しません。
以下は、別の関連タスクです。
gulp.task('connect', connect.server({
root: './app',
port: 1337,
livereload: true,
open: {
file: 'index.html',
browser: 'Google Chrome'
}
}));
gulp.task('styles', function () {
gulp.src('.sass-cache').pipe(clean({read:false}));
return gulp.src(stylesPath + '/**/*.scss')
.pipe(sass())
.pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))
.pipe(gulp.dest(stylesPath));
});