【问题标题】:Downside to extjs "iframe architecture" (should I refactor to MVC pattern?)extjs“iframe 架构”的缺点(我应该重构为 MVC 模式吗?)
【发布时间】:2012-05-01 11:53:45
【问题描述】:

我有一个现有的 Intranet webapp(仅内部),使用 ExtJS 使用“iframe 架构”构建,即它在索引页面上有一个顶部菜单和一个标签面板,还有大约 30 个其他单独的网页作为 iframe“标签”打开主标签面板。

使用 iframe 没有任何特别的原因,所有内容都在同一个域中,并且大多数其他单独的页面几乎都是使用 ExtJS 库编写的,几乎完全用 javascript 编写。几乎所有的 html 都由空的 HTML、HEAD 和 BODY 标记组成。

我真的很想使用 ExtJS MVC 架构重构它并放弃 iframe,但因为“一切正常”,我无法证明花时间这样做是合理的。

我有但无法测试的一个想法是:这些单独的页面中的每一个都有自己的 Ext.onReady 事件和视口等,这个 web 应用程序必须为每个 iframe-tab 加载完整的 ExtJS 框架它打开,严重放大了客户端资源的使用。谁能确认这种类型的架构可以用 ExtJS 框架做到这一点?

还有其他非常充分的理由应该重构吗?

或者,重构为 MVC 架构只会让我更轻松地维护代码而不会提升性能? (目前一切都按预期工作)

【问题讨论】:

    标签: javascript iframe architecture extjs extjs4


    【解决方案1】:

    不幸的是,我没有与您手边的类似的项目,所以我无法自己测试它,但这是我的 2c... :)

    1. 我确实认为每个页面都会启动它自己的 ExtJs 框架副本,但我认为它只会影响 CPU 和内存的使用。网络流量应该不会有太大的不同,因为核心 ExtJs 文件将被缓存。

    2. 我确实建议在运行此应用程序时检查网络流量,因为您将看到浏览器如何准确处理所有这些。您可能希望在核心 ExtJs 函数中添加一些额外的逻辑,以确认框架是否实际上被实例化了多次。

    3. 如果最终用户遇到一些性能问题 - 证明重构的合理性可能是非常好的一点。不然有点难。当然,除非您有计划在不久的将来扩展功能并计划继续开发此应用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-24
      • 1970-01-01
      • 1970-01-01
      • 2012-04-16
      • 2023-03-23
      • 1970-01-01
      • 2013-09-01
      相关资源
      最近更新 更多