我偶然发现了 Jangaroo,它似乎提供了我需要的东西。问题是要使用它,文档说我需要设置 Maven。
我确实只有一个功能,所以这一切都有点过分了。
理想的解决方案类似于 Telerik Code Converter( http://converter.telerik.com ),但适用于 AS3。
最佳答案
我刚刚更新了有关如何使用 Jangaroo 作为命令行工具的文档:
https://github.com/CoreMedia/jangaroo-tools/wiki/Stand-Alone-Compiler
执行步骤 1 到 6 后,您可以像这样编译单个类:
mkdir joo\classes
jooc -v -g SOURCE -classpath %JOOLIBS%\jangaroo-runtime.jar -sourcepath . -d joo\classes GACodec.as
请注意,生成的 JavaScript 文件 GACodec.js
只能与 jangaroo 运行时一起使用。 Wiki 页面继续提供有关如何最终获得可运行的 Web 应用程序的说明。对于您的类(class),您只需解压 jangaroo-runtime.jar
:
"%JAVA_HOME%\bin\jar" -xf %JOOLIBS%\jangaroo-runtime.jar
然后,您可以从一个很小的 HTML 文件运行您的类,如下所示:
<script src="joo/jangaroo-runtime.module.js"></script>
<script>
joo.classLoader.import_("GACodec");
joo.classLoader.complete(function() {
alert(new GACodec().encode("FOOBAR!"));
});
</script>
在尝试您的代码时,我注意到它需要进行一些小的更改才能工作:Jangaroo 不会为类型化局部变量生成隐式初始化代码。代码中至少有两行声明了整型变量但未显式初始化。 ActionScript 会将其设置为 0
,但 Jangaroo 不会。无论如何,进行显式初始化是更好的风格,如果这样做,即在源代码中替换
var i:int;
由
var i:int = 0;
据我所知,它似乎有效!
最后一件事,我发现使用 Maven 比安装 Jangaroo SDK 更容易,因为您只需安装 Maven 一次,它就会处理所有需要的下载,并使更新到最新的 Jangaroo 版本变得轻而易举:只需增加 Jangaroo 版本号在您的 pom.xml
中,Maven 会处理其他所有事情。
关于javascript - 如何使用 Jangaroo 将单个 As3 函数转换为 javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27204733/