JavaScript


Setup

Make Pagy available in your JavaScript environment with...

application.js
import Pagy from "pagy.mjs"

Make Pagy available in your JavaScript environment with...

ERB template / HTML page
<%= javascript_include_tag "pagy.min.js" ...%>

<!-- or if your app does not provide helpers -->
<script src="/path/to/pagy.min.js"></script>

The following statement will copy and keep synced the pagy* file in your own app/javascript dir (or any dir you may want use).

It will become and processed exactly like one of your own files.

# Replace 'pagy*' with the file you picked
Pagy.sync(:javascript, Rails.root.join('app/javascript'), 'pagy*') if Rails.development?

If you prefer to sync manually or during an automation step, you can define your own task with a single line in the Rakefile, or any *.rake file:

# Pagy::SyncTask.new(resource, destination, *targets)
# Replace 'pagy*' with the file you picked
Pagy::SyncTask.new(:javascript, Rails.root.join('app/javascript'), 'pagy*')

and exec it with...

bundle exec rake pagy:sync:javascript
Rails.application.config.assets.paths << Pagy::ROOT.join('javascripts')
window.addEventListener("load", Pagy.init)
window.addEventListener("turbo:load", Pagy.init)
window.addEventListener("turbolinks:load", Pagy.init)
window.addEventListener("your-event", Pagy.init)