我将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);
}
})
知道我做错了吗?
答案 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();
});