初始化和解构控制器的最佳实践

2023-12-01

构建应用程序时设置控制器的最佳方法是什么?

我知道路由、事件侦听器和大多数交互性都应该由控制器管理,但是我的主控制器开始失去控制,我不确定如何最好地将我的逻辑分离到单独的控制器中而不保留它们全部”一直在奔跑”...


即使有数十数千个控制器,也可以在应用程序启动时加载它们。视图渲染需要时间。

确保您的应用程序已最小化并使用 sencha cmd 连接。

在测试中,我创建了 1000 个简单的控制器,如下所示:

Ext.define('app.controller.ControllerN', {
    extend: 'Ext.app.Controller',
    init: function(application) {    
        this.control({
            buttonN1: {
                click: function() {
                }
            },
            buttonN2: {
                click:function(){}
            }, 
            ... 20 listeners
        });
    }
});

我将它们连接到一个文件中,并将它们加载到 app.js 中,如下所示:

Ext.application({
    name:'app',
    controllers:[
      'Controller0',
      'Controller1'
       ... 1000 controllers
    ],
    launch:function(){}
}

从浏览器刷新(Chrome)到调用最后一个控制器的 init 方法花了一秒钟。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

初始化和解构控制器的最佳实践 的相关文章

随机推荐

  • NSFetchedResultsController ,其中包含由字符串的第一个字母创建的部分

    在 iPhone 上学习核心数据 关于核心数据用部分填充表视图的示例似乎很少 这核心数据手册示例使用部分 但它们是从模型中的完整字符串生成的 我想按照姓氏的第一个字母将核心数据表组织成多个部分 就像地址簿一样 我可以为每个人创建另一个属性
  • SWF 对象 - 我为什么要使用它

    我的所有网站都需要对搜索引擎友好 即搜索引擎可读 然而 我有点喜欢flash并且希望以友好的方式集成它 我可以选择 swfobject 它允许正确的页面名称并向用户和搜索引擎提供不同的页面 但是 我想知道为什么需要使用 swfobject
  • fmt.Scanf 在 Go 中无法正常工作

    我正在尝试一个应该测试 fmt Scanf 的片段 但它似乎没有按预期工作 package main import fmt time func main fmt Println What is your favorite color var
  • 类型错误:super() 至少需要 1 个参数 [Python 3] [重复]

    这个问题在这里已经有答案了 在下面的代码中 尽管我重新检查了超过 15 分钟 但仍然出现相同的错误 为了您的信息 我在 sublime text 上运行它并出现错误 类型错误 super 至少需要 1 个参数 给定 0 个 代码如下所示 c
  • Fruchterman Reingold 的吸引力如何与 Boost Graph Library 配合使用

    我正在 Boost Graph Library 中学习 Fruchterman Reingold 算法 通过阅读文档 我知道该算法是根据图形布局计算所有节点的位置 但我的问题是我无法理解Boost Graph Library中吸引力的计算步
  • 套接字断开通知方法

    只是寻找一个可能的解决方案来识别客户端何时断开连接 我找到了这个 public bool IsConnected Socket s try return s Poll 1 SelectMode SelectRead s Available
  • Pandas 按唯一计数分组作为新列

    我想添加一个新列col在我的 pandas 数据框中 计算公式为 select count distinct ITEM as col from base data where STOCK gt 0 group by DEPT CLAS DA
  • 如何使用 watir-webdriver 禁用 Firefox 中的下载窗口?

    我不想处理 Firefox 或 IE 中的下载窗口 我想自动下载excel文件 没有任何下载窗口 我尝试为 Firefox 设置几个配置参数 但没有成功 在我的测试中 我尝试下载 Excel 文件 profile Selenium WebD
  • wxpython。需要帮助解决令人困惑的错误

    该代码适用于另一台计算机上的其他人 但似乎不适用于我 我正在使用 python 2 7 7 它对另外两个人来说效果很好 但它似乎不喜欢我或我的计算机 因为每当我运行它时 它都会给我一条错误消息 你们有什么感想 Traceback most
  • 3G 条码阅读器

    我是 iPhone 应用程序的新手 但最近我看到一个帖子 要求为 3G iPhone 提供条形码读取器 人们 包括我 提到过zxing它适用于 3GS 或更高版本 如果您想申请 3G 那么最好从 QuickMark 或 Red Laser
  • PHP在post请求中读取xml

    所以 我执行了两个步骤 a 在其中一个 php 文件中创建一些随机 xml 文件 b 解析第二个文件中的相同 xml 文件 关键点是 a 中的 php 文件将向 php 文件 b 发出仅 xml 作为请求的 post 请求 文件 b 必须使
  • Perl 中最小的非零正浮点数是多少?

    我有一个 Perl 程序 它处理的概率有时可能非常小 由于舍入误差 有时其中一个概率为零 我想做以下检查 use constant TINY FLOAT gt 1e 200 my prob calculate prob if prob 0
  • sha1() 用于密码哈希

    我使用 sha1 来保证密码安全 我以这种方式将密码存储在register php中 secure password salt openssl random pseudo bytes 20 secured password sha1 pas
  • HTML5 Canvas putImageData,翻译它,更改图像

    我想使用 HTML5 画布绘制图像 翻译图像 然后更改图像 但保留我所做的转换 这可能吗 这是一些伪代码来说明我的问题 initially draw an image and translate it var context canvas
  • 如何在Python中打印嵌套列表的所有可能性?

    这是我的清单 pos det noun adj noun vb det vb noun adj Or pos det noun adj noun vb det vb noun adj 我正在尝试打印所有组合 det noun noun vb
  • 为什么要修复 E_NOTICE 错误?

    作为一名开发人员 我在打开 E NOTICE 的情况下工作 最近有人问我为什么应该修复 E NOTICE 错误 我能想到的唯一原因是纠正这些问题是最佳实践 还有其他人有任何理由证明花费额外的时间 成本来纠正这些问题是合理的吗 更具体地说 如
  • 在头文件中使用 extern 的优点

    这里有一个类似的问题标题 但在阅读答案时 它似乎没有解决该特定问题 C 头文件中的 extern 有什么用 它更像是 为什么使用头文件 在下面的用法中extern extern int a int b structs have no ext
  • ggplot2:箱线图是否仅用于计算 y 轴范围内的值?

    我注意到箱线图的中位数 用受限的 ylim 参数构建 可能与中位数 函数或未调整 y 轴的箱线图获得的中位数不同 这是否意味着箱线图仅用于计算位于 y 轴定义间隔内的值 如果是这样 我怎样才能获得正确的箱线图 基于所有值 但将其绘制在 y
  • findViewById 不适用于特定视图

    我有一个从 XML 加载的活动 视图像往常一样具有 ID
  • 初始化和解构控制器的最佳实践

    构建应用程序时设置控制器的最佳方法是什么 我知道路由 事件侦听器和大多数交互性都应该由控制器管理 但是我的主控制器开始失去控制 我不确定如何最好地将我的逻辑分离到单独的控制器中而不保留它们全部 一直在奔跑 即使有数十数千个控制器 也可以在应