【问题标题】:scala.js with scala.js-react. Is there fetch method?scala.js 与 scala.js-react。有获取方法吗?
【发布时间】:2018-02-05 18:46:53
【问题描述】:

我使用scala.jsscala.js-react。为了发送ajax 请求,我写了如下内容:

def send(e: ReactEventFromInput) = Callback{
  val v = e.currentTarget.value
  val formData = new FormData()
  formData.append("myVar", v)

  val xhr = new XMLHttpRequest
  xhr.onreadystatechange = (e: org.scalajs.dom.Event) => {
    if (xhr.readyState == XMLHttpRequest.DONE) {
      if (xhr.status == 200) {
        println("Sended!")
      } else {
        println("Error!")
      }
    }
  }

  xhr.open("POST", "/my-api-route", true)
  xhr.setRequestHeader("X-Requested-With", "XMLHTTPRequest")
  xhr.send(formData)
}

可以,但是代码太长了。

是否提供类似javascriptfetch的fetch方法?

P.S.对不起,我的英语不是我的母语

【问题讨论】:

    标签: ajax scala fetch scala.js


    【解决方案1】:

    找到Ajax 对象:

    def send(e: ReactEventFromInput) = Callback{
        val v = e.currentTarget.value
        val formData = new FormData
        formData.append("myVar", v)
    
        Ajax.post("/my-api-route", formData) map (r =>
          println("Sended!")
        ) onFailure {
          case dom.ext.AjaxException(r) => println("Error:" + r.response)
        }
      }
    

    【讨论】:

    • Ajax 对象在哪里? (导入)
    • org.scalajs.dom.extensions,除非我弄错了,
    猜你喜欢
    • 2018-07-27
    • 1970-01-01
    • 2014-04-04
    • 2021-12-31
    • 1970-01-01
    • 1970-01-01
    • 2015-02-10
    • 1970-01-01
    • 2023-04-05
    相关资源
    最近更新 更多