繁体   English   中英

创建一个Scala.js库-将Scala链接到Javascript

[英]Creating a Scala.js Library - linking the Scala to the Javascript

我正在尝试编写一个可以在Scala.js中使用的新库。 我已经用Javascript编写了一些类和方法的实现。 如何设置它以便用户可以在Scala.js(Scala)中进行编码?

我已经看过GitHub上的一些Scala.js库,但是这些库没有显示Javascript代码。 它们似乎都是.scala文件。

那么,实际上如何为Scala.js创建一个新的库?

编辑:库的主要代码必须使用Javascript编写,因为它利用了Javascript音频api的优势。

有点同意@sjrd的评论,应该可以直接在Scala.js中编写以JavaScript为目标的API(请参阅从Scala.js调用JavaScript )。

或者,也可能以强类型的Scala方式“导入”或将现有JavaScript代码转换为Scala.js“ .scala”文件,因此:

  1. 将您的JavaScript文件转换为TypeScript ,首先将文件扩展名从'.js'更改为'.ts'。
  2. 使用@sjrd (!) TypeScript-to-ScalaJS导入器@ Github将在#1中创建的TypeScript文件处理为有效的Scala [JS]文件。
  3. 最后,使用#2中生成的'.scala'文件针对Scala.js开发代码

由于TypeScript是JavaScript的强类型超集,因此仅更改扩展名就足够了-否则,在运行第2步并失败后,您可能需要优化TypeScript的库,这篇文章,“如何编译纯*”。带有TypeScript编译器的js(JavaScript)文件应对此有所帮助。

“ DefinitelyTyped”代码存储库@ Github包含一个更新为TypeScript的JavaScript库的集合, webaudio API就是其中之一(因此可以使用上述过程在Scala.JS中进行转换和使用)。

还没有亲自测试过这一点, 生气, 我很想知道您是否从该工具集/过程中获得了任何收益

以下是一些额外的TypeScript资源:

http://en.wikipedia.org/wiki/TypeScript
http://www.sitepen.com/blog/2013/12/31/definitive-guide-to-typescript

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM