我有这个模型
type alias Model =
{ exampleId : Int
, groupOfExamples : GroupExamples
}
type alias GroupExamples =
{ groupId : Int
, results : List String
}
在我的更新功能中,如果我想更新exampleId将是这样的:
{ model | exampleId = updatedValue }
但是,如果我需要更新,例如,只更新GroupExamples中的结果值,该怎么办?
答案 0 :(得分:11)
在语言中没有任何额外内容的唯一方法是对外部记录进行解构,如:
let
examples = model.groupOfExamples
newExamples = { examples | results = [ "whatever" ] }
in
{ model | groupOfExamples = newExamples }
还有focus package允许您:
set ( groupOfExamples => results ) [ "whatever" ] model