全书目录

第三十八篇:Phoenix 完全指南 —— 实时频道城邦宇宙

第十章:LiveView 里,事件和状态怎么流动

1 分钟 135 字 第 729 / 962 个阅读单元

再看一张专门给 LiveView 的图:

text
浏览器 DOM
  │
  │ phx-click / phx-submit / phx-change
  ▼
LiveView 进程
  │
  ├── handle_event/3   ← 用户事件
  ├── handle_info/2    ← PubSub / 进程消息
  ├── handle_params/3  ← URL 参数变化
  └── assign / update / stream
  │
  ▼
重新渲染 HEEx
  │
  ▼
只把 diff 推回浏览器

这就是 LiveView 的本质:

  • 事件发上来
  • 服务器改状态
  • 模板重算
  • 浏览器只吃差异

所以 LiveView 项目的一个核心能力,不是“会不会写 DOM 操作”,而是:

会不会把 UI 状态翻译成清晰的事件和 assigns。