小编JMa*_*Mac的帖子

Scala Future map由于缺少ClassTag而无法编译

简单的问题,我有一个问题,使用mapTo对结果的问题导致编译器错误的结果如下:

not found: value ClassTag
Run Code Online (Sandbox Code Playgroud)

例如:

(job ? "Run").mapTo[Result]
                   ^
Run Code Online (Sandbox Code Playgroud)

我不明白为什么需要ClassTag才能进行演员表演?如果我从替补一PREDEF标准类一样String(job ? "Run").mapTo[String]该编译OK.

当我在相关的行上方定义类时会发生这种情况,如:

class Result {}
(job ? "Run").mapTo[Result]
Run Code Online (Sandbox Code Playgroud)

我仍然遇到同样的问题.

谢谢你,杰森.

我还应该说我正在使用Scala 2.10.0和Akka 2.1.0(如果这有所不同).

scala future akka

10
推荐指数
1
解决办法
2155
查看次数

Scala Futures如何与flatMap链接在一起?

我正在Scala中第一次使用Futures,正在研究使用flatMap组合器的例子; 我一直在关注这个讨论:

http://docs.scala-lang.org/overviews/core/futures.html

具体来说,这个例子:

val usdQuote = future { connection.getCurrentValue(USD) }
val chfQuote = future { connection.getCurrentValue(CHF) }
val purchase = for {
    usd <- usdQuote
    chf <- chfQuote
      if isProfitable(usd, chf)
} yield connection.buy(amount, chf)

purchase onSuccess {
    case _ => println("Purchased " + amount + " CHF")
}
Run Code Online (Sandbox Code Playgroud)

被翻译成这个:

val purchase = usdQuote flatMap {
    usd =>
         chfQuote
        .withFilter(chf => isProfitable(usd, chf))
        .map(chf => connection.buy(amount, chf))
}
Run Code Online (Sandbox Code Playgroud)

我掌握一点麻烦的是如何以及何时执行flatMap?

我知道usdQuote和chfQuote是在"某个时间"由"某个线程"执行的,并且它们的注册回调函数被调用,问题是:

a)usdQuote和chfQuote是否同时执行?(我很确定他们是).

b)flatMap如何将Future useQuote的值分配给usd?在操作usdQuote完成时,是否会调用它?

c)什么线程正在执行'flatMap'和'map'操作(可能更多是后一个问题的后续操作).

干杯.

monads scala future

9
推荐指数
1
解决办法
7213
查看次数

无法在Ubuntu 10.04LTS上安装新的0.11.3 sbt

这个过程曾经在0.11.2中正常工作,但是最近对sbt组ID改为org.scala-sbt(来自org.scala-tools.sbt)的改变似乎打破了依赖.

我有一台10.04 LTS机器,我使用deb软件包文件添加了Typesafe deb存储库,如下所述:https : //github.com/harrah/xsbt/wiki/Getting-Started-Setup.

当我尝试从回购安装时,我得到:

[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: org.scala-tools.sbt#scripted-plugin_2.9.1;0.11.3: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::

[warn] module not found: org.scala-tools.sbt#scripted-plugin_2.9.1;0.11.3
[warn] ==== typesafe-ivy-releases: tried
[warn] http://repo.typesafe.com/typesafe/ivy-releases/org.scala-tools.sbt/scripted-plugin_2.9.1/0.11.3/ivys/ivy.xml
[warn] ==== local: tried
[warn] /home/jasonmaclulich/.ivy2/local/org.scala-tools.sbt/scripted-plugin_2.9.1/0.11.3/ivys/ivy.xml
[warn] ==== Typesafe Repo: tried
[warn] http://repo.typesafe.com/typesafe/ivy-releases/org.scala-tools.sbt/scripted- plugin_2.9.1/0.11.3/ivys/ivy.xml
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/org/scala-tools/sbt/scripted-plugin_2.9.1/0.11.3/scripted-plugin_2.9.1-0.11.3.pom
Run Code Online (Sandbox Code Playgroud)

如何指示sbt在正确的组ID中查找脚本插件?

我还尝试使用此启动程序进行手动安装(遵循UNIX安装说明):

//typesafe.artifactoryonline.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/0.11.3-2/sbt-launch.jar

我仍然得到以下未解决的依赖:

[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: org.scala-tools.sbt#scripted-plugin_2.9.1;0.11.3: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
Run Code Online (Sandbox Code Playgroud)

思考?

谢谢你,杰森.

scala sbt ubuntu-10.04

7
推荐指数
1
解决办法
2588
查看次数

有时无法滚动我的iOS Safari网络应用

您可以在此处查看我的网络应用程序的示例:

https://arep.co/g/giveaway-test-do-not-delete/

该网络应用的结构如下:

Web App屏幕截图

有一个固定的页脚,当前带有文本“输入比赛”和倒计时。我打电话的web应用程序是的部分不是固定页脚主要部分

有几件事正在发生(可能彼此相关):

  1. 当“焦点”从主要部分更改为固定页脚时,滚动主要部分有时会停止工作。我之所以宽松地使用“聚焦”一词,是因为我认为它不是正确的术语,但是我不确定在此使用什么词。
  2. 发生这种情况时,你可以得到滚动通过再次努力主要部分,以改变“焦点” -在这之后重新开始滚动。但是有时您必须重新加载页面,然后再次神奇地滚动即可。
  3. 首次加载页面时,有时主要部分的滚动根本无法工作,而是锁定了,如果不重新加载页面或单击“输入竞赛”按钮就无法使其再次滚动。

如何繁殖

这是棘手的部分,因为它有点难于再现:

  1. 有时,当您首次加载网络应用程序时,无法滚动主要部分。如果您重新加载页面,那么它可以正常工作,或者如果您单击“输入竞赛”以强制Safari重新绘制bkgrd(它弹出一个模态),则滚动将再次开始工作。或者,如果您重新调整了手机的方向,以便从纵向更改为横向,然后又更改为纵向以强制Safari重新绘制DOM,则焦点自然会更改回主要部分,然后可以再次滚动。
  2. 如果您开始在主要部分上滚动,然后向下移动拇指以使其脱离固定的页脚,则可以滚动到一个点,在该点上它会停止正确响应,并且您必须等待几秒钟以进行“操作”(不确定什么),然后再次正确开始滚动。

我不得不说在iOS Safari中滚动是一个巨大的巨型 PITA!我在Android上没有遇到任何这些问题-webview组件是如此的有问题。

javascript css safari html5 ios

7
推荐指数
0
解决办法
1177
查看次数

标签 统计

scala ×3

future ×2

akka ×1

css ×1

html5 ×1

ios ×1

javascript ×1

monads ×1

safari ×1

sbt ×1

ubuntu-10.04 ×1