这将在ReasonML中编译:
let testFn = who => Js.(log("Hello " ++ who ++ "!"));但不是在ReScript中:
FAILED: src/test.ast
Syntax error!
/xxx/src/test.res:1:25-27
1 │ let testFn = who => Js.(log("Hello " ++ who ++ "!"));
2 │
I'm not sure what to parse here when looking at "(".
Syntax error!
/xxx/src/test.res:1:25-27
1 │ let testFn = who => Js.(log("Hello " ++ who ++ "!"));
2 │
consecutive statements on a line must be separated by ';' or a newline我在official docs中没有发现任何关于删除的提法。我错过了吗?语法是否改变了,或者它被删除了,并且在文档中没有提到?
发布于 2021-01-27 15:47:33
正如@Yawar在评论中指出的那样,在撰写本文时不支持此速记,但在未来的某个时候可能会支持此速记(请参阅https://github.com/rescript-lang/syntax/issues/2进行讨论)。
对于遇到这种情况的人来说,为了节省一次点击,一个解决方法是使用本地作用域重写它,并在该作用域中打开模块:
let testFn = who => {
open Js
log("Hello " ++ who ++ "!")
}https://stackoverflow.com/questions/65909442
复制相似问题