mirror of
https://github.com/we-promise/sure.git
synced 2026-04-07 22:34:47 +00:00
Initial commit
This commit is contained in:
23
app/javascript/controllers/dropdown_controller.js
Normal file
23
app/javascript/controllers/dropdown_controller.js
Normal file
@@ -0,0 +1,23 @@
|
||||
import { Controller } from "@hotwired/stimulus"
|
||||
|
||||
// Connects to data-controller="dropdown"
|
||||
export default class extends Controller {
|
||||
static targets = ["menu"]
|
||||
|
||||
toggleMenu(event) {
|
||||
event.stopPropagation(); // Prevent event from closing the menu immediately
|
||||
this.menuTarget.classList.toggle("hidden");
|
||||
}
|
||||
|
||||
hideMenu() {
|
||||
this.menuTarget.classList.add("hidden");
|
||||
}
|
||||
|
||||
connect() {
|
||||
document.addEventListener("click", () => this.hideMenu());
|
||||
}
|
||||
|
||||
disconnect() {
|
||||
document.removeEventListener("click", () => this.hideMenu());
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user