我正在创建一个 Intranet 应用程序,其 UI 主要使用 Ext JS 4.1.1
我创建了几个自定义 javascript 类,扩展 Ext JS 控件和其他用于 UI、验证、通信等的代码。
鉴于我的代码不是很大,并且我的应用程序将部署在受控且众所周知的环境中,我理想情况下希望在应用程序调用(启动)时预先加载所有 .js 文件。我想知道一种实现这一目标的方法,主要来自 Ext JS 的领域。
我正在创建一个 Intranet 应用程序,其 UI 主要使用 Ext JS 4.1.1
我创建了几个自定义 javascript 类,扩展 Ext JS 控件和其他用于 UI、验证、通信等的代码。
鉴于我的代码不是很大,并且我的应用程序将部署在受控且众所周知的环境中,我理想情况下希望在应用程序调用(启动)时预先加载所有 .js 文件。我想知道一种实现这一目标的方法,主要来自 Ext JS 的领域。
你想做的事情真的很平常。查看部署部分,了解如何使用 Sencha SDK 创建一个文件,其中包含您所有扩展 extjs 组件的自定义 javascript类
我希望它有用;)
截至本月,Sencha(测试版)发布了一个改进的构建工具。实际上,它是用 Java 完全重写的(我相信)。Sencha Cmd
是名字,前身本该如此!
编译时间已经缩短到其前身的十分之一,并且现在使用强大的命令处理器配置包/构建。
与其他构建框架和 CI 服务器的集成现在是重中之重,并通过将该工具与 ANT 集成来实现。
我刚刚花了几个小时将一个项目从旧的迁移Sencha SDK Tools
到新的Sencha Cmd
. 我特别喜欢新的编译器。
文档已经很不错了。
对于遵循 Sencha 建议的标准(单页)模式的小型项目,实际上有一系列更高级的命令来管理整个应用程序的创建和构建过程。
此外,Sencha 现在已经为多页应用程序提供了一个模式。
而且您始终可以直接使用编译器并在其之上实现自己的构建过程。这就是我们在项目中所做的。
有一个类叫做Ext.Loader
这更像是一个服务器端问题,而不是 Ext JS 问题。您想预先包含所有页面吗?获取一个 JavaScript 压缩器来将您的文件连接在一起,缩小整个包,并<script>
为您的 Web 应用程序中的每个页面添加一个标签。
我还在一个大量使用 Ext JS(3 和 4)的 Intranet Web 应用程序上工作,但我们有相当大的代码库。由于我们使用 Tomcat,因此我们有一个 Java 类,其中包含每个页面上的标准文件,以及该页面所需的任何文件组或单个文件。类似的东西也可能对你有用。
您可以Ext.Loader
在需要时使用动态加载,但这听起来不像您正在寻找的。不过,如果您的代码库扩展并且您需要更好的解决方案,这仍然是一个选择。
编辑:如评论中所述,我最初的答案未能解决Sencha SDK Tools。我觉得将我的回复作为修改后的答案的一部分会更有益。
虽然这个任务可能正是 Sencha SDK 的设计目的,但我觉得该产品对于生产环境来说还不够成熟。在撰写本文时,当前版本是 2.0.0 Beta 3. Beta,这意味着它仍在开发中,它显示。文档几乎不存在,官方论坛上充斥着声称该产品根本不起作用的主题。在这一点上,它只不过是一个可以玩的玩具。我见过的最有用的文档是Sencha SDK Tools 2.0 and ExtJS4: The Missing Docs,作者甚至以“SDK 工具需要大量工作”结尾。
当我为生产环境选择产品时,我想要稳定、可靠、具有良好文档的产品和质量支持的产品。Sencha SDK 工具不是这些东西。然而。