当我使用以下命令构建我的sencha touch 2应用程序时: - sencha app build production
但它会引发错误:
[INFO] Deploying your application to /Applications/MAMP/htdocs/iPadapp/build/production
[INFO] Copied sdk/sencha-touch.js
[INFO] Copied app.js
[INFO] Copied resources/css/app.css
[INFO] Copied resources/images
[INFO] Copied resources/icons
[INFO] Copied resources/loading
[INFO] Resolving your application dependencies...
[ERROR] Error thown from your application with message: TypeError: 'undefined' is not an object
我在代码中跟踪了错误。我发现,这是由于加载我的清单。这是我的代码
Ext.define("myProject.store.Members",{
extend :'Ext.data.Store',
requires:"Ext.data.proxy.LocalStorage",
config: {
model :"myProject.model.Member",
sorters :'lastName',
autoload:true,
proxy: {
type: 'localstorage',
id : 'mainStore'
}
}
});
如果我删除行'autoLoad:true'(这会破坏我的应用程序,那么我可以构建应用程序。但我的列表没有加载。如果我把它重新发送错误重复。我尝试动态加载列表加载功能,但它没有任何意义。
这是我正在使用的model.js文件。
Ext.define('myProject.model.Member', {
extend: 'Ext.data.Model',
config: {
fields: [
'index',
'email',
'firstname',
'lastname',
'phone',
'currentemployer',
'currenttitle',
'interestlevel',
'tcgroupNames',
'active',
'lastlogin',
'usertypedesc',
'recruiternotes',
'recruitercontact',
'addtype',
'usertypedesc',
'jobtitle',
'ipAddress',
'recruitersource',
'agentkeywords',
{ name: "created", type: 'date' },
'recruiterprofileurl_linkedin',
'recruiterprofileurl_facebook'
]
}
});
感谢任何帮助
快乐编码所有
答案 0 :(得分:4)
我遇到同样的问题,不允许命令构建器打开与localstorage的连接,因此崩溃了。
您应该可以在Ext.getStore('Members').setAutoLoad(true);
的{{1}}中设置
launch: function () {
。
然后您的应用将构建并仍应将数据加载到商店中。
答案 1 :(得分:0)
请注意,使用Chrome开发者工具比使用Firebug更好地跟踪错误, 因为在Firebug的控制台中,它在控制台上没有显示异常 Chrome开发者工具中显示了未捕获的异常:
Ext.getStore("Notes").load();
我的案例中不存在商店'Notes'。