sencha touch 2.2.1 检查控制器中的商店是不是为空?

Posted

技术标签:

【中文标题】sencha touch 2.2.1 检查控制器中的商店是不是为空?【英文标题】:sencha touch 2.2.1 check if store is empty from controller?sencha touch 2.2.1 检查控制器中的商店是否为空? 【发布时间】:2013-08-28 12:53:15 【问题描述】:

请问我该如何实现上述目标?我有一个从服务器检索为 json 文件的嵌套列表。当有数据时,我想显示列表,否则我需要向用户显示“当前无可用数据”之类的消息

【问题讨论】:

【参考方案1】:

您可以在列表配置中使用选项 emptyText 来显示消息。 http://docs.sencha.com/touch/2.2.1/#!/api/Ext.dataview.List

var nestedList = Ext.create('Ext.List', 
   emptyText : 'No Data currently Available',
   store : store
);

store.on('load', function(store, records) 
    if (records.length == 0) 
        nestedList.getActiveItem().sethtml(nestedList.getEmptyText());
    
);

这里有完整的例子http://www.senchafiddle.com/#2WiFV

【讨论】:

谢谢,但我担心这在 2.2.1 中不会像这里写的那样工作 [sencha.com/forum/… 我需要在商店加载时从控制器中完成。 哦...我刚看到你的答案...和我的一样...干杯【参考方案2】:

阅读文档后,我设法解决了以下问题...在控制器中,我写道:

init: function() 
     var onlineStore = Ext.getStore('OnlineStore');

     onlineStore.on('load', function(store, records) 
         if (records.length == 0) 
                 list.getActiveItem().setHtml('<p>No data available!</p>');
         
     );

 

【讨论】:

以上是关于sencha touch 2.2.1 检查控制器中的商店是不是为空?的主要内容,如果未能解决你的问题,请参考以下文章

Sencha Touch 2 - 如何检查 ViewPort 中是不是存在项目

sencha touch 2 中的设备检查

Sencha Touch 2.2.1 Carousel 未初始化

如何在 Sencha Touch 中使用数据库? [关闭]

Sencha Touch 2:从 Ext.Msg.confirm 中调用控制器功能

从控制器将变量应用于视图中的按钮?Sencha Touch