kos*_*tja 20 scala future monad-transformers scala-cats
我试图OptionT结合Future[Option[T]]在for-comprehension中返回的方法.
import cats.data._
import cats.implicits._
import cats.instances.future._
for {
data <- OptionT(repo.getData(id))
...
}
Run Code Online (Sandbox Code Playgroud)
我得到的编译器错误:
could not find implicit value for parameter F cats.Functor[scala.concurrent.Future]
Run Code Online (Sandbox Code Playgroud)
我在这里错过了什么?
谢谢
Fed*_*tta 27
通过导入,cats.implicits._您实际上已经导入cats.syntax.AllSyntax和cats.instances.AllInstances
尝试只使用那些导入:
import cats.data._
import cats.implicits._
Run Code Online (Sandbox Code Playgroud)
或(根据您的需要):
import cats.data._
import cats.instances.future._
Run Code Online (Sandbox Code Playgroud)
或者更具体地说:
import cats.data._
import cats.instances.future.catsStdInstancesForFuture
Run Code Online (Sandbox Code Playgroud)
你可能还需要:
import scala.concurrent.Future
import scala.concurrent.ExecutionContext.Implicits.global
Run Code Online (Sandbox Code Playgroud)
注意:当然,您必须ExecutionContext在生产环境中隐式提供实际内容.
| 归档时间: |
|
| 查看次数: |
6439 次 |
| 最近记录: |