我正在编写一个webapp,我想使用提交表单中的值,但是类型不匹配:
类型不匹配;发现:connectfour.Board =>需要选项[Int] :()=>任何
我的代码如下所示:
var value=0
"name=value" #> SHtml.onSubmit(s => asInt(s).foreach(value= _)) &
// when the form is submitted, process the variable
"type=submit" #> SHtml.onSubmitUnit(askForHumanMove)
和我的askForHumanMove方法:
def askForHumanMove(board: connectfour.Board): Option[Int] = {
Some(value)
}
希望有人可以帮助我解决这种不匹配问题。
谢谢!
祝你好运, 约翰
答案 0 :(得分:4)
我认为onSubmitUnit
接受() => Any
作为参数。但是你传递的方法正被提升为函数Board => Option[Int]
。这些类型不兼容。
在调用Board
方法时,您是否在范围内有onSubmitUnit
的相关实例?如果是这样,修复很简单:
"type=submit" #> SHtml.onSubmitUnit( () => askForHumanMove(board) )