无法识别的类名/别名widget.combobox (hiddenfield, fieldcontainer, ..).



在开发过程中,我通过"sencha应用程序手表"运行我的应用程序,我没有错误。但是当我通过"sencha应用程序构建测试"构建我的应用程序时,我得到了不同标准组件的错误:对于组合框,隐藏字段,字段容器。我已经通过将组件类名称添加到"require"部分来解决它。我的问题:为什么我必须做这个技巧? 这个字段有什么问题?因为对于文本字段,我没有收到任何错误。我使用 ext js 6.2.0。GPL 版本

要求:按给定名称及其所有直接依赖项加载所有类。

此错误非常常见,通常是因为在使用该组件之前未加载所需的 Ext 组件或其直接依赖项之一而发生的

  1. 在开发设置中,我们在工作区
    中有 Ext 设置通常可以轻松拉取所需的依赖项。

  2. 在生产或测试用例中,它无法加载文件或加载导致此问题的直接依赖项之一。

  3. 主要是动态加载这些依赖项。

确保对

使用的任何组件使用 REQUIRED 始终是一种最佳做法。

这意味着任何组件都没有问题,只是由于它们内部捆绑的方式,大多数负载问题。

当您使用 ExtJS

的开发版本时,它基于 app-all.js ,其中包含大多数(如果不是全部)ExtJS 类,并且大小缩小了 2 MB(未缩小 9 MB)。因此,一旦加载了该文件,它们就完全可用了。

当您编译 ExtJS 版本时,Sencha Cmd 会构建所需类的依赖树,以将生成的app.js的大小保持在最小值(在我的应用程序中,它缩小了 1.1 MB)。对于此依赖关系树,它从app.js文件开始,并考虑类中的定义:

  • extend
  • override
  • requires
  • uses

在控制器中:

  • views
  • stores
  • models

不是其他地方,例如:

  • Ext.create()(如果动态构建组件,则可能分散在代码周围)
  • xtype组件树中。

最新更新