gulpとBrowserSync で作るちょっと便利なローカルサーバ
6029 ワード
タスクランナーを使って、ちょっと便利なローカルサーバを作る手順をご紹介します。
対象読者
- タスクランナーって難しそうでなかなか手が出せない
- タスクランナー使ってみたいけど、既存サイト改修ばかりでなかなか導入できる案件がない
- フロントエンド開発のためにXAMPP入れるのはオーバースペックな気がする
特徴
- 構築が簡単にできる
- CSSの変更時に、リロードなしでブラウザ上へ反映する
-
htmlの変更時に、ブラウザを自動リロードするかえって邪魔になる場合があるので今回は見送り
ローカルサーバの作成
$ npm init -y
$ npm install --save-dev browser-sync gulp
gulpfile.js
const gulp = require('gulp')
const browserSync = require('browser-sync').create()
// ソースを配置するディレクトリまでの相対パス
const srcDir = 'src'
/**
* サーバ起動タスク
*/
gulp.task('server', (done) => {
browserSync.init({
// BrowserSyncのオプション
'server': {
'baseDir': [
srcDir,
],
},
'ui': false,
'ghostMode': false,
'open': false,
'notify': false,
}, done)
})
/**
* CSS監視タスク
*/
gulp.task('watch', () => {
// CSSの監視
const wacher = gulp.watch(`${srcDir}/**/*.css`)
// CSS変更時にstreamを使ってブラウザ上へ反映する
wacher.on('change', (path) => gulp.src(path).pipe(browserSync.stream()))
return wacher
});
/**
* デフォルトタスク
*
* サーバ起動タスク完了後に、CSS監視タスクを開始する
*/
gulp.task('default', gulp.series(
'server',
'watch'
))
ローカルサーバの起動
$ npx gulp
まとめ
SASS のコンパイル後の CSS 自動反映の方法はよく見かけますが、プレーンな CSS 変更後の自動反映の記事が見当たらなかったので紹介してみました。
また、 BrowserSync の proxy オプションを使えば、バックエンド組み込み後のサイトにも使えますが、そのご紹介はまたの機会に。
Author And Source
この問題について(gulpとBrowserSync で作るちょっと便利なローカルサーバ), 我々は、より多くの情報をここで見つけました https://qiita.com/yuki0410_/items/b73a0c68a9b5d1ab6889著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .