- Unplanned Obsolescence:包含Blog、About、RSS等。
- 两年使用 htmx 的经历:用 htmx 写的软件项目对用户体验更好,维护更易,可能比之前写的任何东西都更有用。使用 htmx 需内化其暗示但未强制的理念,尽可能使用纯 HTML。
- 如何使用 htmx:多数网站应使用 htmx 进行用户不期望在刷新或新页面加载时看到的更新,或在刷新或新页面加载时也存在的更新,其他情况应使用常规链接和表单进行标准的全页面导航。如制作展示今日棒球比赛的网站,首页用 htmx 定期更新实时比分,点击比分板标题可进入该游戏页面,页面的其他信息也用 htmx 更新。不建议用
hx-boost
接管所有页面导航。 - 什么是 hx-boost:
hx-boost
是将“常规”链接转换为“增强”链接的属性,点击“增强”链接时,htmx 会向链接的 URL 发出 HTTP 请求,并将页面的<body>
替换为响应内容,理论上感觉更“平滑”,类似单页应用。 - hx-boost 的问题:它解决的问题可用其他方式更好地解决,且自身会产生很多问题,如点击后退按钮可能看到部分页面更新,刷新页面可能空白,其他库可能出错等。
hx-boost
使用 JavaScript 的 History API,实际很难正确实现,会移除页面上其他库的通用语言,引发长期的 JavaScript 环境问题。 - 应做的替代操作:使用常规链接,常规链接是更好的用户和开发者体验。
hx-boost 的好处及替代方式:
- 发送缓存头以在页面加载间重用 CSS 和 JS:大多数静态文件服务器支持 ETags 和缓存控制头,可减少文件加载时间,如在包含 htmx 的网站中设置缓存头。
- 使用同源链接获取部分页面更新:Chrome 76 推出的 Paint Holding 功能可使点击同源链接时头部保持在原位,为使用常规链接的网站带来性能提升。
- 利用 HTML 进行免费性能升级:使用标准 HTML 功能可让浏览器以 JavaScript 无法做到的方式优化性能和用户体验,如页面历史、加载条等功能在默认情况下在每个浏览器中都能正常工作。
- hx-boost 存在的原因:htmx 在 SPA 似乎是未来趋势时创建,要证明能复制 SPA 的关键功能,现在 htmx 已证明自身,应强调 HTML 和 HTTP 的功能。
- 是否应使用 htmx 制作 SPA:朋友的Song Obsessed网站有持久音乐播放器,
hx-boost
适合,但大多数只需添加少量交互性的网页应使用常规链接。SPAs 是高级工具,需谨慎使用。 注意事项:
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。