主要观点:LiveView 1.0.0 发布,历经六年,其编程模型高效且独特。
关键信息:
- 移除传统全栈开发的诸多问题,HTTP 可消失,服务器处理渲染和动态更新。
- 实时基础带来超能力,如实时服务器日志到 js 控制台、生产热代码升级等。
- 优化编程模型,通过 diffing 引擎仅执行变化部分模板和发送最小数据更新客户端。
- 具有一流的低延迟,连接服务器进行页面导航等操作,节省资源。
- 引入 HEEx 实现可复用组件,有声明式组件系统、HTML 验证等。
- 优化 HEEx 语法,扩展属性插值语法至标签体。
- 有 HEEx 标记注释,方便追踪代码生成的 HTML 位置。
- 解决交互式上传问题,定义
UploadWriter
行为进行各种操作。 - 推出流和异步相关功能,轻松处理大型集合和异步操作。
- 已在多个社区被采纳,React 也推出类似的 React Server Components。
重要细节: - 首次 LiveView 提交六年后发布 1.0 里程碑,提交次数图表展示其发展。
- 最初概念类似 React,服务器运行 UI,通过 Phoenix Channels 实现交互。
- 优化后的编程模型自动且免费应用优化,减少网络更新工作。
- HEEx 组件是带注释的函数,插槽可让组件更具扩展性。
- 新的 HTML 插值语法及 EEx
<%= %>
支持的场景。 debug_heex_annotations
可标注渲染标记的文件行信息。- 交互式上传可实现多种功能,
UploadWriter
行为可处理上传流。 assign_async
和start_async
可处理异步操作。- 可通过
new.phoenixframework.org
快速开始使用 LiveView 或查看现有应用的变更。 - 后续计划围绕协同 JavaScript 钩子等继续努力。
- 特别感谢 Phoenix 团队尤其是 Steffen Deusch 对 LiveView 的贡献。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。