FunScript querySelector 空结果
FunScript querySelector null result
我想使用 document.querySelector
方法获取 html 节点。结果在 Js 中我可以收到 null
。但在 F# 中,结果类型是 Element
,它既不是可为 null 的也不是可选的,并且不清楚如何检查它是否为 null
。当 querySelector
不匹配任何 DOM 节点时,我该如何处理?
是的,F# 代码确实假定 Element 不可为空。您可以通过多种方式欺骗编译器进行不同的思考。可能最简单的方法是像这样装箱值:
let el = Globals.document.querySelector(".myclass")
if (box el) = null
then doSomething()
else doSomethingElse()`
box
生成 JS 代码时将被忽略,因此这样做不会影响性能。
我想使用 document.querySelector
方法获取 html 节点。结果在 Js 中我可以收到 null
。但在 F# 中,结果类型是 Element
,它既不是可为 null 的也不是可选的,并且不清楚如何检查它是否为 null
。当 querySelector
不匹配任何 DOM 节点时,我该如何处理?
是的,F# 代码确实假定 Element 不可为空。您可以通过多种方式欺骗编译器进行不同的思考。可能最简单的方法是像这样装箱值:
let el = Globals.document.querySelector(".myclass")
if (box el) = null
then doSomething()
else doSomethingElse()`
box
生成 JS 代码时将被忽略,因此这样做不会影响性能。