如果我用
loginError := if (loginItem.username.isEmpty) None else Some(loginItem.isUsernameValid)
编译器说:
illegal start of simple expression
当更改为
val err = if (loginItem.username.isEmpty) None else Some(loginItem.isUsernameValid)
loginError := err
一切顺利。
为什么我必须使用一个临时变量?
最佳答案
在第一种情况下,您需要在if表达式周围加上括号,因为(用外行的话)if的优先级比:=
低:
loginError := (if (loginItem.username.isEmpty) None else Some(loginItem.isUsernameValid))
关于scala - 使用:=时,scalajs中出现“illegal start of simple expression”错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42895246/