榆树 - 建筑


在本章中,我们将讨论在 Elm 平台中创建应用程序的标准方法。Elm 使用类似于模型-视图-控制器模式的架构模式。

以下是 Elm 架构的四个主要部分。

  • 模型
  • 看法
  • 信息
  • 更新
建筑学

Elm架构是如何工作的

模型包含应用程序状态。例如,如果应用程序显示客户列表,则状态将包含每个客户数据。为了以可呈现的方式显示状态,必须生成视图/html。一旦用户通过按下按钮或在表单中键入数据与视图交互,视图就会生成称为消息的信号。消息被传递到更新方法,该方法评估消息并采取适当的操作。因此,更新方法将生成一个新的模型。

新模型产生新视图。该视图将导致从用户到信号消息的新交互,从而更新功能。此外,该函数还创建了一个新模型。因此,如上图所示,循环重复。

模型

模型处理应用程序的状态。定义模型的语法如下 -

-- Model syntax

type alias Model = {
   property1:datatype,
   proptery2:datatype
...
}

要创建模型,我们需要首先创建一个包含所需所有属性的模板。每个属性指定应用程序的状态。

看法

视图是应用程序状态的直观表示。视图知道如何获取数据并从中生成网页。当用户与视图交互时,用户可以通过生成消息来操纵状态。定义视图的语法如下:

--View Syntax
view model =some_implementation

信息

消息是来自用户的更改应用程序状态的请求。消息作为参数传递给更新函数。

--Message Syntax
type Message = Message1 |Message2 ...

语法显示类型消息。Elm 应用程序将根据传递给它的消息编辑状态。这些决定是在 update 方法中做出的。

更新

更新函数解释作为参数传递给它的消息,并更新模型。

--Update Syntax
update Message_type model =
   some_implementation

更新函数以Message和 Model 作为参数。