個人でコツコツ触っているRailsですが, coffeescriptの扱いは困った感じでした.
最初はデフォルトという理由で頑張って勉強しようかと思ったのですが, もうjsもES2016とか2017とかも話題になっているし流石に良いかなと排除することに.
ところが消すのも以外と苦労したのでメモっておきます.
手順は以下でやりました.
- .coffeeのファイルを.jsへリネーム
- 中身をcoffeeからjsへ変更
- Gemfileのcoffee-railsをコメントアウト
- キャッシュを削除
以下1つずつ.
.coffeeのファイルを.jsへリネーム
これはコマンドですぐ終わります.
$ cd app/assets/javascripts $ for nm in *.coffee; do git mv $nm ${nm%.coffee}.js; done
中身をcoffeeからjsへ変更
これが恐らく一番面倒ですが, 今回はほとんどjsを書いていなかったのですぐ終わりました.
ただし, 中にはcoffeescriptのコメントだけのファイルがあったりして油断すると引っかかるので注意かも.
Gemfileのcoffee-railsをコメントアウト
これは消すだけです.
#gem 'coffee-rails', '~> 4.2'
これでgenerateコマンドでもjsを吐き出すようになります.
キャッシュを削除
ここまでやってもう大丈夫かなと思ったら以下のエラーが出てテストが通らなくなりました.
LoadError (cannot load such file -- coffee_script):
困ってたんですが, githubにissueがあったので救われています.
LoadError: cannot load such file -- coffee_script
以下のコマンドで解決できました.
bin/rake tmp:cache:clear
キャッシュが残るんですね.
gemも変えているのでサーバの再起動も忘れないように.