質問
rails初心者です。
webpackerの使い方を調べていたところ以下の説明文を見つけたのですが、疑問に思った点があったので質問させていただきます。
質問1
Webpackerをインストールすると、app/javascript/packsディレクトリ以下のJavaScriptファイルがコンパイルされて独自のpackファイルにまとめられます。
私はrails install
を実行しwebpackerをインストールしたのですが、app/javascript配下にpacksというディレクトリがありません。packsディレクトリは自分で(手動で)作るのですか?つまり、webpackerをインストールしたら自動でpacksディレクトリが作られるわけではないのですか?
質問2
app/javascript/packs/application.jsというファイルが存在すると、Webpackerはapplicationという名前のpackを作成します。このpackは、<%= javascript_pack_tag "application" %>というERBコードが使われているRailsアプリケーションで追加されます。
また、packsディレクトリを手動で作る場合、まずpacksディレクトリを作り、さらにpacksディレクトリ内でapplication.jsを作っておく必要があるということですか?
参考サイト
念のため
まだまだ知識不足で、この質問においてどのような情報が必要なのかわからないため、必要になりそうなコードなどを貼っておきます。他力本願ですみません。
webpacker.yml
# Note: You must restart bin/webpack-dev-server for changes to take effect default: &default source_path: app/javascript source_entry_path: packs public_root_path: public public_output_path: packs cache_path: tmp/cache/webpacker webpack_compile_output: true # Additional paths webpack should lookup modules # ['app/assets', 'engine/foo/app/assets'] additional_paths: [] # Reload manifest.json on all requests so we reload latest compiled packs cache_manifest: false # Extract and emit a css file extract_css: false static_assets_extensions: - .jpg - .jpeg - .png - .gif - .tiff - .ico - .svg - .eot - .otf - .ttf - .woff - .woff2 extensions: - .mjs - .js - .sass - .scss - .css - .module.sass - .module.scss - .module.css - .png - .svg - .gif - .jpeg - .jpg development: <<: *default compile: true # Reference: https://webpack.js.org/configuration/dev-server/ dev_server: https: false host: localhost port: 3035 public: localhost:3035 hmr: false # Inline should be set to true if using HMR inline: true overlay: true compress: true disable_host_check: true use_local_ip: false quiet: false pretty: false headers: 'Access-Control-Allow-Origin': '*' watch_options: ignored: '**/node_modules/**' test: <<: *default compile: true # Compile test packs to a separate directory public_output_path: packs-test production: <<: *default # Production depends on precompilation of packs prior to booting for performance. compile: false # Extract and emit a css file extract_css: true # Cache manifest.json for performance cache_manifest: true
現在のapp/javascriptディレクトリ内のディレクトリ構成
app/javascript: ├── controller: │ │ └── application.js │ └── hello_controller.js │ └── index.js │ └── application.js
バージョンなど
ruby : uby 3.1.2p20
rails : Rails 7.0.4
情報が足りなかったら申し訳ありません。
以上、よろしくお願いいたします。
回答2件