javascript - 在 Angular 中执行 BlockUI

标签 javascript angularjs promise blockui

在网络应用程序中有一个调用函数的按钮。运行中想插入blockUI怎么办?我答应了吗?具体在哪里?

$scope.eraseDB = function(){
    database.destroylocalDB();
};

函数:

destroylocalDB: function(){

  localDB.destroy().then(function (response) {        
      //Remove cache
      datacache.dr = [];
      database.initDB();
  }).catch(function (err) { 
      console.log(err);
  });       
}

最佳答案

你看过Angular BlockUI了吗? ?

看看 documentation .配置后,您只需要:

destroylocalDB: function(){
  blockUI.start(); 
  localDB.destroy().then(function (response) {  
      blockUI.stop();      
      //Remove cache
      datacache.dr = [];
      database.initDB();
  }).catch(function (err) { 
      blockUI.stop();
      console.log(err);
  });       
}

编辑:

要执行您想要的操作,您需要更改服务以返回 promise :

destroylocalDB: function(){

  return localDB.destroy().then(function (response) {        
      //Remove cache
      datacache.dr = [];
      database.initDB();
  }).catch(function (err) { 
      console.log(err);
  });       
}

所以你可以:

$scope.eraseDB = function(){
    blockUI.start(); 
    database.destroylocalDB().then(function(){
        blockUI.stop();
    });
};

我没有测试,但应该可以。

关于javascript - 在 Angular 中执行 BlockUI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36917356/

相关文章:

javascript - Typescript:类型 'Promise<{}>' 无法分配给类型

javascript - 使用原始 javascript 淡化 HTML 元素

javascript - 如何从 postMessage() 调用异步返回值?

javascript - 如何使用 JQuery 从 <tr> 元素内的所有输入元素获取值

javascript - 如何防止在某些情况下显示剑道工具提示?

javascript - 单击帖子链接可在另一页上显示完整结果

angularjs - 发送保留字符作为 URL 参数值

javascript - AngularJS 验证和 promise

javascript - 具有身份验证功能的 Firebase 快照监听器

javascript - 如何在没有客户端脚本的情况下完全折叠和更改网站内容?