13
May 2020
gulp, gulp-sass のインストール
$ npm install gulp gulp-sass -D
サンプルのディレクトリ構成
必要なもの:
- ソースディレクトリ
- アウトプットディレクトリ
- gulpfile.js
今回の場合, ソースディレクトリとアウトプットディレクトリはそれぞれ、./sass と ./css となる。
gulpfile.js の設定
gulpfile.js を以下のように設定する
gulpfile.js
const gulp = require('gulp')
const sass = require('gulp-sass')
gulp.task('sass', () => {
return gulp
.src('./sass/style.scss')
.pipe(sass())
.pipe(gulp.dest('./css'))
})早速コンパイルしてみよう!
$ gulp sass
ファイル監視の設定
次は、自動監視のタスクを作成する.
gulpfile.js
const gulp = require('gulp')
const sass = require('gulp-sass')
gulp.task('sass', () => {
return gulp
.src('./sass/style.scss')
.pipe(sass())
.pipe(gulp.dest('./css'))
})
gulp.task('watch', () => {
gulp.watch('./sass/**/*.scss', gulp.series('sass'))
})実行してみると
$ gulp watch
gulp-sassの自動監視はこれで終わり!
おまけ
コンパイルエラーのログ
gulpfile.js
const gulp = require('gulp')
const sass = require('gulp-sass')
gulp.task('sass', () => {
return gulp
.src('./sass/style.scss')
.pipe(sass().on('error', sass.logError))
.pipe(gulp.dest('./css'))
})
gulp.task('watch', () => {
gulp.watch('./sass/**/*.scss', gulp.series('sass'))
})タスク チェーン
gulp-printは次のようにインストールして進める
$ npm i gulp-print -D
gulpfile.js
const gulp = require('gulp')
const sass = require('gulp-sass')
const print = require('gulp-print').default;
gulp.task('print', () => {
return gulp.src('./sass/**/*.scss')
.pipe(print(filepath => `matched wildcard: ${filepath}`))
});
gulp.task('sass', () => {
return gulp
.src('./sass/style.scss')
.pipe(sass().on('error', sass.logError))
.pipe(gulp.dest('./css'))
})
gulp.task('watch', () => {
gulp.watch('./sass/**/*.scss', gulp.series(['print', 'sass']))
})