JQuery ajax调用Scala.js

时间:2014-02-27 14:41:45

标签: jquery ajax scala.js

在我的应用上,我需要进行一些ajax调用,我正在尝试使用jQuery。

这样做的方法是将类型为JQueryAjaxSettings的对象传递给jQuery.ajax(url:String,settings:JQueryAjaxSettings)。但是我找不到实例化这样一个对象的方法。

我试图用一个对象继承该类,一个简单的类,但这些都不起作用。

这是怎么回事?

1 个答案:

答案 0 :(得分:12)

您必须使用js.Dynamic.literal来构造settings参数,并将其转换为适当的类型,如下所示:

import scala.scalajs.js
import org.scalajs.jquery._

jQuery.ajax(js.Dynamic.literal(
    url = "http://www.w3.org/People/Berners-Lee/card",
    success = { (data: js.Any, textStatus: js.String, jqXHR: JQueryXHR) =>
      console.log(s"data=$data,text=$textStatus,jqXHR=$jqXHR")
    },
    error = { (jqXHR: JQueryXHR, textStatus: js.String, errorThrow: js.String) =>
      console.log(s"jqXHR=$jqXHR,text=$textStatus,err=$errorThrow")
    },
    `type` = "GET"
).asInstanceOf[JQueryAjaxSettings])