gpt4 book ai didi

javascript - 为什么 Angular ng-hide 不能正确更新

转载 作者:行者123 更新时间:2023-11-29 16:47:03 24 4
gpt4 key购买 nike

我想通过我控件中的 $ 范围更新此 View 中名为 hideProgressBar 的指令“ng-hide”的变量。但它不起作用。

下面的行有效:

$ Scope.hideProgessBar = true;

但是下面的行不起作用:

$ Scope.hideProgessBar = false;

完整代码见下:

.controller('UltimasEdicoesCtrl', function($scope, $cordovaFileTransfer, $cordovaFileOpener2) {
$scope.hideProgessBar = true;

$scope.Download = function () {
$scope.hideProgessBar = false;
ionic.Platform.ready(function($scope){

var url = "http://www.wgontijo.com.br/teste.pdf";
var filename = url.split("/").pop();
var targetPath = cordova.file.externalRootDirectory + 'Pictures/' + filename;

$cordovaFileTransfer.download(url, targetPath, {}, true).then(function (result) {
$cordovaFileOpener2.open(
targetPath,
'application/pdf'
).then(function() {
// file opened successfully
}, function(err) {
alert('erro ao abrir o arquivo')
});

}, function (error) {
alert('Erro ao abrir o arquivo');
}, function (progress) {
$scope.downloadProgress = (progress.loaded / progress.total) * 100;
});
});
}

})

HTML

<div class="w3-progress-container" ng-hide="{{hideProgessBar}}">
<div id="myBar" class="w3-progressbar w3-green" style="width:{{downloadProgress}}%">
<div id="demo" class="w3-center w3-text-white">{{downloadProgress}}%</div>
</div>
</div>

最佳答案

您只需从 ng-hide="{{hideProgessBar}}" 中删除大括号 {{}} 一切都会正常进行。它不适用于大括号的原因是 ng-hide 指令已经在寻找 Angular 属性,因此不会告诉 Angular 有变量。

关于javascript - 为什么 Angular ng-hide 不能正确更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40033556/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com