blockUI没有停止

时间:2016-07-05 17:55:03

标签: angularjs blockui

我将angular-block-ui module添加到我的Angular项目中,但是在我的ajax请求期间它没有自动阻止UI。

所以,我尝试手动使用它,它显示了阻止屏幕,但它不会忽略它。

所以,我做了一个更简单的测试,只是显示了块并试图在2秒后停止它,同样的问题。屏幕被阻挡但不会消失。

这是我的代码:

'use strict';

myApp.controller('LoginModalCtrl', function ($scope, blockUI) {

     $scope.login = function () {
        console.log("on submit");   

        blockUI.start();

        setTimeout(function(){
            //do what you need here
            blockUI.stop();
            console.log("finished")
        }, 2000);
    }

})

知道我做错了吗?

3 个答案:

答案 0 :(得分:0)

所有这些“阻止”包括将div放在页面顶部。多数民众赞成。

它运作良好:http://plnkr.co/edit/HjXcgQD7JghFjtsOAEo0?p=preview

您应该使用$timeout,而不是setTimeout。

不想进入细节,但它似乎并不是那个聪明的图书馆......

答案 1 :(得分:0)

您应该使用 var localsetting = KnownFolders.DocumentsLibrary; var versionfile = await localsetting.CreateFileAsync("TEST.txt", CreationCollisionOption.OpenIfExists); await FileIO.WriteTextAsync(versionfile, "TEst Content2"); System.IO.File.SetAttributes(versionfile.Path, System.IO.FileAttributes.Hidden); ,而不是setTimeout。

$timeout

答案 2 :(得分:0)

您需要将其包装在$ scope.apply

$scope.$apply(function () {
    blockUI.stop();
});