如何读取Scala.js中的资源文件?

2023-12-07

假设我有一个map.csv文件位于同一级别(或其他一些 web 应用程序可访问的位置)index-{dev,opt}.html, e.g.:

key1,value1
key2,value2
...
keyN,valueN

我想读取该 CSV 文件并最终得到一个Map[String,String]。我知道如何在 Scala 中执行此操作,但在 Scala.js 中如何执行此操作?

我试图不对键和值进行硬编码。


解析基本上与传统 Scala 中的解析方式相同——毕竟,它们是同一种语言。

所以真正的问题是fetching文件。不存在一刀切的解决方案;例如,这取决于您使用的网络服务器。我自己的系统是基于 Play 的,并且同源代码看起来像这样:

override def postInit() = {
  val ajaxCall:PlayAjax = controllers.Assets.versioned("messages/default/clientStrings")
  ajaxCall.callAjax().map { messageText =>
    val hoconTable = HoconParse(messageText)
    _messages = Some(MessagesImpl("", hoconTable))
    _readyPromise.complete(Success())
  }
}

其中的细节对于我的(相当复杂的)设置来说是特定的,但基本原理很简单:发出 AJAX 调用以将文件作为文本加载,然后解析该文件。

还有其他选项 - 例如,在服务器端加载和解析文件,然后使用类似的方法将其作为强类型结构发送到客户端Autowire。这完全取决于您的基础设施是什么样的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何读取Scala.js中的资源文件? 的相关文章

  • 如何在使用 Binding.scala 将元素加载到 dom 后执行一些 init

    dom def chart show Var Boolean if show bind
  • 无法让 uTest 查看我的测试

    我正在尝试让 uTest 与 ScalaJS 和 SBT 一起使用 SBT 正在编译文件 uTest 正在运行 但它只是忽略我的测试 尽我所能 我找不到我的代码和教程示例之间的任何区别 构建 sbt enablePlugins ScalaJ
  • Binding.scala:避免过多 dom 树更新的策略

    在我的项目中scala 适配器我显示通过网络套接字发送的日志条目 由于我无法控制发送的条目数量 因此我正在寻找一种策略来避免屏幕冻结 我创建了一个 ScalaFiddle 来模拟 https scalafiddle io sf kzr28t
  • 如何读取Scala.js中的资源文件?

    假设我有一个map csv文件位于同一级别 或其他一些 web 应用程序可访问的位置 index dev opt html e g key1 value1 key2 value2 keyN valueN 我想读取该 CSV 文件并最终得到一
  • 使用 scalajs 创建自定义 DOM 事件

    我找不到使用 scala js 创建自定义事件的方法 例如 使用 js 您可以创建如下所示的自定义事件 摘自此处 var event new CustomEvent build detail elem dataset time 但是 没有构
  • 调整大小之前传单地图无法正确显示

    我在 Binding scala 上使用带有 scalajs leaflet 外观的 Leaflet 并且地图初始化 显示不正确 为了重现这个问题 我准备了一个lihaoyi workbench页面类似于 scalajs leaflet 中
  • scala.js 与 jscala 有什么区别?

    有两个工具可以直接在 JavaScript 中编译 Scala 代码 Scala js http www scala js org and JScala https github com nau jscala 它们看起来都很棒 并且可以使用
  • 使用不透明类型(Char 和 Long)

    我正在尝试导出算法的 Scala 实现以在 JavaScript 中使用 我在用着 JSExport 该算法适用于 ScalaChar and Long值被标记为opaque in the 互操作性指南 http www scala js
  • 如何使用 scala.js 读取文本文件?

    基本上我想弄清楚我需要传递什么onload method def selectedFile e ReactEventI val reader new dom FileReader reader readAsText e currentTar
  • 如何导出共享案例类的属性

    我正在尝试在服务器和客户端之间共享案例类 我在两端都使用了 upickle 对象及其数据在两端都可以很好地使用 共享类 case class Foo var id Long var title Description 但是我需要在客户端导出
  • DOM 更新过多

    链接 https ccamel github io playground binding scala index html playground binding scala home https ccamel github io playg
  • 如何将现有的 Scala 库移植到 scalajs?

    我是 Scala js 新手 我想使用 Argonaut json 库 https github com argonaut io argonaut https github com argonaut io argonaut 它唯一的依赖项似
  • JSweet 能否有效地移植 Java 库以在交叉构建的 Scala.js 项目中使用?

    寻找使 Java 库可供 Scala js 的 JavaScript 和 JVM 端访问的方法交叉构建 https www scala js org doc project cross build html项目 请考虑以下实验 想象一下 S
  • 从 SJSIR “手动”构建 JS

    我需要在运行时从 sjsir 文件构建一个 js 文件来实现插件系统 这样就无法在编译时与我的其余编译一起完成 我曾经在 0 6 3 中使用以下代码实现相同的过程 但它似乎已被弃用 您建议使用什么算法来实现与 0 6 13 相同的操作 谢谢
  • 为 JavaScript 模块编写 scalajs Facade 时如何使用 JSImport

    我使用 JSImport 编写了一个外观 并且它有效 不幸的是 我通过反复试验找到了解决方案 并且我不完全理解为什么这个特定的解决方案有效 但我尝试过的其他解决方案却无效 背景 我从一个使用 sbt 构建的工作项目开始 它是一个单页应用程序
  • 如何从传递到 scalatags 的事件处理程序访问“this”元素?

    我正在尝试访问当前的文本 this 元素来自使用 scalatags 创建的事件处理程序 这是我尝试过的 val onChange e HTMLElement gt number e textContent toInt js ThisFun
  • 如何在 Nodejs 中实际运行 scalajs 代码?

    我正在开发一个后端聊天服务器 它目前是用混乱的回调 javascript 编写的 所以我正在考虑将其移植到 scalajs 我一直在浏览初学者指南 但我找不到如何将项目实际编译为可以使用节点运行的单个 JavaScript 文件 例如nod
  • scala-js 如何与 sbt-web 集成?

    我想用scala js https github com scala js scala js with sbt web https github com sbt sbt web以这样的方式 它可以被编译以生成添加到资产管道中的 JavaSc
  • 为什么不重新评估 Binding.scala 路由器?

    我正在尝试通过 Binding scala 为个人项目构建通用路由器 我定义了一个PageState trait sealed trait WhistState def text String def hash String def ren
  • 用于真实 Web 项目的 Scala-JS [已关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 有人用过吗Scala JS在真实的网络项目中 但不仅仅适用于普通的JavaScript在隔离环境中替换 我想尽可能多地使用 Scala 我希望可

随机推荐