投稿日: 2018-01-06
Rails 5のwebpacker環境で開発をしているとcoffeescriptを使いたくなるのがRails使いの性というものです
特にCoffeeScript2からはjsxにも対応しており、reactを使用するうえで有用に見えます
この記事ではrails5.1 + webpacker + react + coffeescript2 での環境構築手順を記載しています
webpackerは現在高速で開発が進んでおり、導入手順を探してもちょっとしたバージョン違い等が原因でうまく動作しなかったりします
ここに書き残しておくのはwebpacker 3.2 + coffeescript 2.2.1の組み合わせの場合の導入方法です
rails webpacker:install
rails webpacker:install:react
rails webpacker:install:coffee
coffee-loaderは0.9以上でcoffeescript2に対応しているそうです
// package.json
- "coffee-loader": "^0.8.0",
- "coffee-script": "^1.12.7",
+ "coffee-loader": "^0.9.0",
+ "coffeescript": "2.2.1",
$ yarn install
config/webpack/environment.js
でcoffeescriptファイルの設定を変更します
// config/webpack/environment.js
const { environment } = require('@rails/webpacker')
const babel = environment.loaders.get('babel')
environment.loaders.insert('coffee', {
test: /\.coffee(\.erb)?$/,
use: babel.use.concat(['coffee-loader'])
})
module.exports = environment