Mã bên dưới không biên dịch và tôi không biết cách khắc phục.cách sử dụng yêu cầu không đồng bộ của Play 2.1.1 và tương lai
def doAsync(n: Int) = Action {
import scala.concurrent.ExecutionContext.Implicits.global
Async {
val f1 = Future.successful(n)
f1.map(x => x match {
case 10 => Ok("first")
case _ => {
val f2 = Future.successful(n)
f2.map(y => Ok("second"))
}
})
}
}
Dòng f2.map(y => Ok("second"))
tạo ra lỗi biên dịch :
loại không phù hợp; tìm thấy: scala.concurrent.Future [play.api.mvc.SimpleResult [Chuỗi]] yêu cầu: play.api.mvc.Result
Lõi "business logic" is: f2
chỉ phải chạy if n is not 10
.