複数の案件を同時に進めている都合上、複数個のbrowser-syncを同時に走らせたいときportが衝突してイライラしちゃうので、そもそもportをランダムにしとけばいいんじゃないか説。
他にいい方法があれば教えてください。。。
// browser-sync.js
module.exports = port => {
const path = require('path');
const browser = require('browser-sync').create();
browser.init({
files: [
// 監視したいファイルのパターンリスト
],
// 動的・プライベート ポート番号からランダムで
port: port || Math.floor(Math.random() * (65535 - 49152)) + 49152,
startPath: '/',
server: {
baseDir: path.join(__dirname, 'public')
}
});
};
// 呼び出し側のjs
require('./browser-sync')(); // 引数にポート番号を入れれば固定でも実行できる