0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Webpackerざっくりまとめ

Last updated at Posted at 2020-06-05

Webpackerとは

Webpackを簡単に導入するためのgem。
本来webpackを導入する時にはwebpack.config.jsに色々設定を書かないといけないが、デフォルトでそれっぽい設定をしてくれる。

カスタマイズに難があるので、嫌っている人もまあまあいる。

AssetPipelineじゃダメなのか

AssetPilelineでJavaScriptを管理すると、npmのモジュールを使うことができないので、、

じゃあAssetPipelineは必要ないのか

WebpackとAssetPipelineの併用が基本。
本来webpackではJavaScript、CSS、画像の全てを管理するけれど、
WebpackerではJavaScriptだけを管理して、CSSと画像はAssetPipelineに乗せるのが主流っぽい。

WebpackerでCSSとか画像を管理することもできるし、そういう記事も割とあるけど、Rails6のデフォルトはJavaScriptだけを管理するようになっている。

構成

app
 └── javascript
 │    └── channels
 │    └── packs
 │         └── application.js # エントリーポイント。全てのjsファイルがここに集約される。
 │    └── src # 処理を記述するファイルを保存するディレクトリ。自分で作る。名前は自由
 │         └── hoge.js
 │         └── fuga.js
config # 設定ファイル
 └── webpack
 │    └── development.js
 │    └── environment.js
 │    └── production.js
 │    └── test.js
 └── webpacker.yml

src以下に処理を書いて、packs/application.jsから読み込む。

app/javascript/packs/application.js
//デフォルトの記述
require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")

import 'src/hoge'
app/javascript/src/hoge.js
console.log('hogehoge')

参考

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?