browser-syncかわいいよbrowser-sync

  • 18
    いいね
  • 2
    コメント
この記事は最終更新日から1年以上が経過しています。

browser-syncかわいいよ。railsでも問題なくつかえるよ。

npm install -g browser-sync

して、プロジェクトディレクトリで

browser-sync init

からの設定ファイルいじって

browser-sync start

はいかんりょ〜

ただデフォルトで使うポートが3000-3100でrailsとかぶっちゃう。browser-syncの方をあとから起動すればちゃんと3001と3002を使ってくれるんだけど、起動の順番気にするのもだるいし設定でポートの指定をかえておくとよいね。

ちなみに今はこんな感じで指定してる。

bs-config.js
files: ["app/assets/stylesheets/*.css.*","app/views/**/*.html.*","app/assets/javascripts/**/*.js.*"]

ports: {
    min: 13000,
    max: 13100
}

でレイアウトで読み込ませればオッケー★

layouts/application.html.slim
- if Rails.env == 'development'
  javascript:
    document.write("<script defer src='//HOST:13000/socket.io/socket.io.js'><\/script><script defer src='//HOST:13001/client/browser-sync-client.0.9.1.js'><\/script>".replace(/HOST/g, location.hostname));

追記

と、ここまで書いてみたものの、いちいちviewに書くのもアレだしエラーでたときにうまく動かないし、proxy modeでやった方がいいんじゃないかと思ったので、これで。

files: ["app/assets/stylesheets/*.css.*","app/views/**/*.html.*","app/assets/javascripts/**/*.js.*"]

# proxy: false
proxy: 'localhost:3000'

このやり方だとrailsのサーバー立ち上げたあとにbrowser-syncを上げることになるし、ポートの指定なんかもそのままでいいよね。startしたら勝手にブラウザ開いてくれるし。これでいこう。