【问题标题】:Uncaught Error: [Ext.create] Unrecognized class name / alias: MyApp.store.LibraryFolderTreeStore未捕获的错误:[Ext.create] 无法识别的类名/别名:MyApp.store.LibraryFolderTreeStore
【发布时间】:2015-04-29 07:25:22
【问题描述】:

我正在迁移ext js 4 to ext js 5.1。我的 extjs 4.2.1 中有代码,升级到 extjs 5.1 后出现控制台错误。它在 ExtJs 4.2.1 中运行良好,不要不知道为什么会出错,说

未捕获的错误:[Ext.create] 无法识别的类名/别名:MyApp.store.LibraryFolderTreeStore

Ext.define('MyApp.view.library.LibraryTreeView', {
       extend : 'Ext.tree.Panel',
       alias : 'widget.librarytreeview',
       requires: [
         'MyApp.store.LibraryFolderTreeStore'
       ],
       store : Ext.create("MyApp.store.LibraryFolderTreeStore") // getting error on this line
       ....
});

【问题讨论】:

  • 你做了 sencha app refresh 还是 sencha app build
  • 假设你的类路径是正确的并且文件位于正确的目录中 - sencha app refreshsencha app build 将首先使用项目中所有必需的类以及查找该类的路径以及类的别名/备用类名(如果有)更新您的 bootstrap.json 文件。这是引导加载程序正确加载类所必需的。
  • @Seram...在使用sencha app refresh command 之后我遇到了依赖错误...[ERR] 无法解析文件 MyTaskModel 的依赖 Gnt.model.Task
  • 您必须在 sencha 类路径中添加该文件的位置 - 可能没有设置。
  • 您能描述一下您实际加载 extjs 文件的方式吗?您的应用程序如何工作..

标签: javascript extjs extjs4 extjs5


【解决方案1】:

定义类时不能使用Ext.Create

您必须使用initComponent 方法,在该方法中您可以使用Ext.Create 分配配置。

Ext.define('MyApp.view.library.LibraryTreeView', {
       extend : 'Ext.tree.Panel',
       alias : 'widget.librarytreeview',
       requires: [
         'MyApp.store.LibraryFolderTreeStore'
       ],
       initComponent : function(){
       this.store = Ext.create("MyApp.store.LibraryFolderTreeStore");
       this.callParent();
       }
        // getting error on this line
       ....
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    • 2013-10-10
    • 2016-05-28
    • 1970-01-01
    相关资源
    最近更新 更多