我试图弄清楚如何从 Haxe 访问外部 JavaScript 库。extern 类的源文件是否应该与相应的本机 JavaScript 文件以及“主”Haxe 源文件位于同一文件夹中,还是可以在单独的源文件夹中定义?
这是我所指的文档:
https://haxe.org/manual/target-javascript-external-libraries.html
此外,是否有任何 Haxe 文档解释了如何访问所有目标中的外部库(而不仅仅是一个目标)?
我试图弄清楚如何从 Haxe 访问外部 JavaScript 库。extern 类的源文件是否应该与相应的本机 JavaScript 文件以及“主”Haxe 源文件位于同一文件夹中,还是可以在单独的源文件夹中定义?
这是我所指的文档:
https://haxe.org/manual/target-javascript-external-libraries.html
此外,是否有任何 Haxe 文档解释了如何访问所有目标中的外部库(而不仅仅是一个目标)?
Extern 机制假设定义的类型在运行时存在(它们可以被调用/使用),但不假设这些类型的定义方式和位置。这适用于所有平台。
extern 库如何包含在您的项目中主要取决于目标,并且可能会有很大差异。
对于 JS,外部定义(.hx 文件)和包含这些类型的 JS(js 库)之间没有直接关联。haxe 文件应该可以通过 haxe 访问(使用-cp
,-lib
或将它们放在源目录中),而 js 文件应该可以通过运行时访问(在 haxe 生成的代码之前在 HTML 中包含 lib JS)。
可能会造成一些混乱的是,Haxe 支持一个允许您在生成的代码中嵌入外部 js 文件的功能。这样您就可以只分发一个文件,而不是一个主文件 + 一个或多个 lib 文件。您可以查看 Haxe 如何自动将 JQuery 包含在__init__()
.