I'm currently trying Rails 6.0.0.rc1 which seems to have moved the default javascript
folder from app/assets/javascript
to app/javascript
. The application.js
file is now located in app/javascript/packs
. Now, I want to add a couple of js files, but for some reason they don't get imported and I can't find any documentation on how this can be done in Rails 6. I tried a couple of things:
Create a new folder custom_js
under app/javascript/packs
, putting all my js files there and then add a require "custom_js"
to application.js
.
Copy all my js files under app/javascript/channels
(which should be included by default, since application.js
has require("channels")
).
Adding require_tree .
to application.js
, which was the previous approach.
How can I load my own js files inside a Rails 6 application?
Get better-organized code and avoid multiple javascript_pack_tags in your application.html.erb file with this approach:
example.js
javascript file to app/javascript/packs
.require("packs/example")
to your application.js
file.I would have liked to add a comment to Asim Hashmi's correct answer. But I don't have enough reputation, so I'll add my suggestion as an answer instead.
It isn't necessary to include the ".js" extension inside of the require.