Hotwire / Turbo 到 htmx 迁移指南

本指南的目的是为 htmx 中的“Hotwire 等价”功能提供常见实践。

Turbo Drive

addEventListener("submit", (event) => {
    event.target.querySelectorAll("button").forEach(node => { node.disabled = true })
})
addEventListener("htmx:afterOnLoad", (event) => {
    event.target.querySelectorAll("button").forEach(node => { node.disabled = false })
})

Turbo Frames

Turbo Streams

Events

document.body.addEventListener('htmx:configRequest', (event) => {
    event.detail.headers['Authorization'] = `Bearer ${token}`
})

Stimulus