Call webpack's require.context
helper with the path to the folder containing your Stimulus controllers. Then, pass the resulting context to the Application#load
method using the definitionsFromContext
helper:
// src/application.js
import { Application } from "@hotwired/stimulus"
import { definitionsFromContext } from "@hotwired/stimulus-webpack-helpers"
const application = Application.start()
const context = require.context("./controllers", true, /\.js$/)
application.load(definitionsFromContext(context))
window.Stimulus = application
Looking for the docs? Once you've read through the Handbook, consult the Stimulus Reference for API details.
Have a question about Stimulus? Connect with other Stimulus developers on the Hotwire Discourse community forum.
Find a bug? Head over to our issue tracker and we'll do our best to help. We love pull requests, too!
We expect all Stimulus contributors to abide by the terms of our Code of Conduct.
Stimulus is MIT-licensed open-source software from Basecamp, the creators of Ruby on Rails.
Continuous integration VMs generously provided by Sauce Labs.
© 2021 Basecamp, LLC.