今天又是极其危险的一天,因为我差点忘记日更!不是因为今天没有学习新的东西,而是懒癌是我忘记了有这回事儿的存在....
今天下午在等待flutter build apk的时候,从微信上翻腾出一篇文章《Htmx意外走红,.....》,当时粗略浏览了一下,感觉还不错,就转发了朋友圈。我不是前端开发工程师,不过作为救火队长,平时会改一些前端的内容,对页面布局、js依赖这些都颇有微词,再加上这一阵子好多刚毕业的学生选择以前端工程师的身份进入职场,让我留意了一下这个前端新闻。
晚上的时候,我在Github上看到Html有9.8k个star,看起来这个技术在前端圈内已经不是什么新闻了,于是继续去官网看一下文档(https://htmx.org/docs/#introduction)。
官方文档上用a标签做对比:
<a href="/blog">Blog</a> 这个锚tag告诉浏览器:当一个用户点击了这个链接,发送一个HTTP GET请求到/blog这个地址,并加载返回结果到浏览器窗口。
<button hx-post="/clicked" hx-trigger="click" hx-target="#parent-div" hx-swap="outerHTML">Click Me!</button>
上面的代码告诉htmx:当一个用户点击这个按钮,发送一个HTTP POST请求到/clicked,并且使用返回的内容来替换DOM中id为parent-div的元素。
所以,当你使用htmx的时候,服务端要返回的是HTML,而不是JSON。
htmx 出现在 2020 年,创建者 Carson Gross 说 htmx 来源自他于 2013 年研究的一个项目 intercooler.js。2020 年,他重写了不依赖 jQuery 的 intercooler.js,并将其重命名为 htmx。然后他惊讶的发现 Django 社区迅速并戏剧性地接受了它!
网友评论