管道`|`运算符在elm-lang的case表达式中做了什么?

What does pipe `|` operator do in case expression of elm-lang?

我的 Elm 代码中有以下代码片段:

type alias Model =
  { content : String
  }


update : Msg -> Model -> Model
update msg model =
  case msg of
    Change newContent ->
      { model | content = newContent }

{ model | content = newContent } 是做什么的? 它是否将 newContent 的值分配(绑定)到 model 以及 content?这就是 | 运算符放在那里的原因吗?

管道不是 case 表达式的一部分。它是记录更新语法,如下所述:https://elm-lang.org/docs/records#updating-records.

{ model | content = newContent }

newContent 的值分配给 model 记录中的 content 字段。

| 为 'with'。

{ model 'with' content (set to) = newContent }