我在理解究竟是什么Html msg类型或者如何使用它时遇到了一些麻烦.我在VirtualDom.elm中找到了这行代码,它Html msg似乎是别名:
type Node msg = Node
Run Code Online (Sandbox Code Playgroud)
这看起来像具有一个类型参数的通用联合类型msg,以及一个不包含其他信息的简单案例.我在想:
div函数如何构造这些对象之一?Html msg只是支持Elm编译器/运行时的神奇类型?我有以下函数来解析整数:
let rec digits = function
| head::tail when System.Char.IsDigit(head) ->
let result = digits tail
(head::(fst result), snd result)
| rest -> ([], rest)
Run Code Online (Sandbox Code Playgroud)
如果我将此函数更改为活动识别器,则不再编译.
let rec (|Digits|) = function
| head::tail when System.Char.IsDigit(head) ->
let result = Digits tail
(head::(fst result), snd result)
// ^^^^^^ ^^^^^^ see error*
| rest -> ([], rest)
Run Code Online (Sandbox Code Playgroud)
*错误FS0001:此表达式应该具有char list*'a类型,但这里有char列表类型