新闻: htmx 2.0 已发布!目前它尚未标记为
latest
NPM,因此使用1.x 系列的人不会意外升级。htmx 官方团队宣称将在 2025 年的某个时间点将 2.0
标记为latest
。
介绍
htmx 让你可以使用属性直接在 HTML 中访问AJAX、CSS Transitions、WebSockets和服务器发送事件,这样你就可以使用超文本的简单性和
强大功能构建现代用户界面
htmx 体积小(~14k min.gz'd)、 无依赖、 可扩展,与 react 相比,代码库大小减少了67%
动机
- 为什么只能 <a> 和 <form> 能够发出 HTTP 请求?
- 为什么只有 click 和 submit 事件才能触发事件?
- 为什么只提供 GET 和 POST 方法?
- 为什么只能更换整个Web页面?
快速开始
<script src="https://unpkg.com/[email protected]"></script>
<!-- have a button POST a click via AJAX -->
<button hx-post="/clicked" hx-swap="outerHTML">
Click Me
</button>
hx-post此按钮上的属性hx-swap告诉 htmx:
“当用户点击此按钮时,向 /clicked 发出 AJAX 请求,并用 HTML 响应替换整个按钮。”
htmx 是intercooler.js的后继者。
阅读文档介绍以获得更深入的介绍。
请注意,htmx 2.x 已放弃对 IE 的支持。如果你需要 IE 支持,可以使用1.x 代码,该代码行将永久受支持。
书籍
htmx官方团队出版了《超媒体系统》(Hypermedia Systems)一书,这是一本关于如何使用 htmx 等构建超媒体驱动应用程序的书:
