从 Flex - mxml(动作脚本)迁移到另一种技术
Posted
技术标签:
【中文标题】从 Flex - mxml(动作脚本)迁移到另一种技术【英文标题】:Moving from Flex - mxml (action scripts) to another technology 【发布时间】:2020-01-20 03:09:10 【问题描述】:Adobe 的 Flash 已经走到了尽头,因此所有应用程序都必须在不同的技术堆栈中重写。我们有使用 flex 编写的大型应用程序。我们有大约 400 个 mxml(+action 脚本)文件,它使用 java 作为后端技术。 所以这里有几个问题-
-
有没有可以理解mxml文件并可以输出html5或javascript组件的转换工具?
如果没有可用的工具,我们应该使用最接近的技术是什么?我尝试使用 React for UI 和 java 后端,将 flex 方法转换为 REST API。这个练习很耗时,需要完全重写 UI 和后端。
是否有其他浏览器插件可以理解编译后的 mxml 或动作脚本(编译后 - .swf 文件)?
提前感谢您的帮助。
【问题讨论】:
查看 SWF2JS 是否会运行您的应用程序:***.com/a/57015598/2057709。否则,请提供有关您的应用程序及其使用的.AS
类的更多信息。您的 SWF 的临时预览(在线演示页面)将帮助我们了解如何为您提供帮助。回答您的问题:(1) 不。这就是为什么在大约 2 年前,Adobe 向大家发出了开始代码转换的“耗时任务”的通知。 (2) 尝试 SWF2JS 通过 JS 代码解码和显示 SWF。 (3) Flash 即将结束,因为所有主要浏览器 都在结束插件。从 2020 年起,我们将拥有无插件互联网。
尽一切努力通过 Adobe AIR 提供应用程序(即作为桌面应用程序)。当然,说服您的管理层或您的用户可能很困难,但任何其他选择都是一项艰巨的工作。自动翻译器不会为您提供工作和可读的代码,并且用 Angular、React 或 Vue(从 Flex 转换的流行选择)重写需要很长时间。
【参考方案1】:
“最简单”的方法是使用下一个版本的 Flex,Apache Royale。
这将允许您保留代码的所有动作脚本部分,并仅使用新的 MXML 组件重写 UI 部分。它有一点学习曲线,因为许多事情的完成方式略有不同,但您不必更改您的 AS3 代码。
【讨论】:
以上是关于从 Flex - mxml(动作脚本)迁移到另一种技术的主要内容,如果未能解决你的问题,请参考以下文章
如何将自定义类导入 Flex 中的 mxml 文件? (动作脚本 3)
在 flex 应用程序中使用 mxml 优于 actionscript 有啥优势?