javascript - sencha touch2 中的加载掩码

标签 javascript html extjs sencha-touch-2

我想在 View 页面中应用加载掩码。在启动应用程序时,一些 View 页面需要时间来加载数据,稍后它会显示,所以如果它在那个时候需要时间加载,我想向用户显示加载掩码,并显示一些消息,如“正在加载......”。从一些示例中我已经应用了负载掩码,但每次我点击该页面时它都会显示该消息。这是不好的方式,因为这里设置时间。 如果没有数据,我需要像这样应用加载掩码,它应该向用户显示加载掩码,直到页面获取数据。请任何人帮助我。如何实现这一点

我的代码在这里: 在 Controller 级别,我获取加载掩码的 ID 并设置属性,如下代码所示

onCompanyPageLoad: function () {
    var loader = Ext.getCmp('mask');        
    loader.setMessage("Loading...");
    loader.setIndicator(true);
    loader.setTransparent(false);      
    loader.show();        
    setTimeout(function () {            
        loader.hide();
    }, 1000);
}

最佳答案

user978790 的答案是在 Sencha Touch 2 中显示和隐藏加载掩码的正式方式。

如果你不能让它工作,很可能你正在做类似的事情:

Ext.Viewport.setMasked({xtype:'loadmask',message:'your custom loadmask'});
... then do something here
Ext.Viewport.setMasked(false);

请注意,Javascript 是异步的,因此它无法确保代码行按上述顺序运行。然后 Sencha Touch 可能会初始化您的加载掩码并立即销毁它。为了正确使用加载掩码:

  1. 如上所述初始化加载掩码。
  2. Ext.Viewport.setMasked(false); 放在special 函数中,确保在加载掩码初始化后启动,例如. JSONP/AJAX 请求的事件处理程序或成功函数。

关于javascript - sencha touch2 中的加载掩码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11189135/

相关文章:

javascript - 未捕获的语法错误 : Unexpected token < in &lt;! DOCTYPE html>

javascript - 将json转成下划线的列表

javascript - 为什么 log4javascript.trace 方法不起作用?

javascript - ExtJs 启用/禁用字段

javascript - React-Native — 访问 componentDidMount 外部的函数

javascript - 如何在悬停时更改 SVG 的描边颜色?

html - 如何在标题上绘制双底边框?

javascript - 使单页博客与搜索引擎一起工作

ajax - 我还可以将什么传递给 Ext.Ajax.request 的 `form` 属性?

javascript - 单击网格特定数据索引上的事件 - Ext JS