我刚刚开始开发一个 ExtJS 应用程序,我计划用一个非常轻量级的 JSON PHP 服务来支持它。除此之外,它将是独立的。我的问题是,组织将不可避免地存在的文件和类的最佳方式是什么?任何人都有大型 ExtJS 项目(几千行)的经验。
4 回答
我将从这里开始http://blog.extjs.eu/know-how/writing-a-big-application-in-ext/
该站点对如何构建应用程序进行了很好的介绍性概述。
我们目前在我们的两个 ASP.NET MVC / ExtJS 应用程序中使用这些想法。
我建议用户愿意等待应用程序加载,因此我们通常在应用程序初始启动时加载所有 JS。我建议根据需要加载和评估 JS 文件是不必要的——尤其是当所有 JS 在部署到生产之前都将被缩小时。
我建议使用命名空间,每个文件一个类,以及一个定义明确且记录良好的类层次结构。
在开发应用程序时,您的文件和文件夹结构并不重要,因为您可能希望最小化发布代码并在完成后将其粘贴到单个 JS 文件中。自动处理程序或构建脚本可能是最好的选择(请参阅http://extjs.com/forum/showthread.php?t=44158)。
也就是说,我在 ExtJS 论坛上的某个地方读到过,建议每个类使用一个文件,我可以根据自己的经验证明这一点。
在开始新的大项目时,我决定将其模块化。通常,在大型项目中,并非所有模块都由特定用户使用,因此我按需加载它们。Fe,如果一个项目有 50 多个模块,那么用户很可能只使用 10 个模块。
这样的架构让您的初始代码相对较小。
模块存储在服务器上并由 AJAX 调用加载,评估 AJAX 回调中的 responseText。唯一的问题是,您必须跟踪模块依赖关系,这些依赖关系也可以存储在模块中。我有一个名为 Module 的类,我检查每个新模块实例是否存在于任务中。如果它还不存在,我从服务器加载它。