榆树架构
榆树架构是一种构建交互式程序的模式,例如 Web 应用程序和游戏。
这种架构似乎是 Elm 中自然形成的。早期 Elm 程序员在代码中持续发现同样的基本模式,而不是由某个人生硬地发明。看到人们在没有提前规划的情况下写出结构良好的代码,有一种令人毛骨悚然的感觉!
因此,在 Elm 中,榆树架构很容易使用,但在任何前端项目中都很有用。事实上,像 Redux 这样的项目就是从榆树架构中获得的灵感,所以你可能已经看到该模式的一些衍生品。关键在于,即使你最终无法在工作中使用 Elm,你也可以通过学习使用 Elm 及其内部模式学到很多东西。
基本模式
Elm 程序总是类似于此
Elm 程序生成 HTML 以在屏幕上显示,然后计算机发回有关正在发生的事情的消息。“他们单击了一个按钮!”
Elm 程序内部发生了什么?它总是分为三部分
- 模型 — 应用程序的状态
- 视图 — 将状态转换为 HTML 的方式
- 更新 — 根据消息更新状态的方式
这三个概念是榆树架构的核心。
接下来的几个示例将展示如何将此模式用于用户输入,如按钮和文本字段。这将使它更加具体!
跟上进度
在线编辑器中提供了所有示例
此编辑器会在左上角显示提示
如果你遇到令人困惑的问题,请务必尝试提示!