Несоответствие типа подъемника Scala? - PullRequest
0 голосов
/ 14 января 2012

Я сейчас программирую веб-приложение и хочу использовать значение из формы отправки, но получаю несоответствие типов:

несоответствие типов; найдено: 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)        
}

Надеюсь, кто-нибудь может помочь мне с этим несоответствием типов.

Спасибо!

С наилучшими пожеланиями, John

1 Ответ

4 голосов
/ 14 января 2012

Мне кажется, что onSubmitUnit принимает () => Any в качестве параметра.Но вы передаете метод, который поднимается в функцию Board => Option[Int].Эти типы несовместимы.

Имеется ли у вас соответствующий экземпляр Board в области действия в момент вызова метода onSubmitUnit?Если это так, то это просто:

"type=submit" #> SHtml.onSubmitUnit( () => askForHumanMove(board) )
...