Почему угловая ng-hide не обновляется правильно

Я хочу обновить переменную, называемую hideProgressBar, директивой « $ Scope . HideProgessBar = true ; » в этом представлении через $ scope в моем элементе управления. Но это не работает.

Строка ниже работает:

$ 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;
          });
  });
  }

})

см. полный код ниже:

<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>

HTML

{{}}

javascript,angularjs,ionic-framework,

2

Ответов: 2


Вам нужно просто удалить скобки ng-hide="{{hideProgessBar}}"из ng-hideи все будет работать. Причина, по которой это не работает с фигурными фигурными скобками, потому что ng-hideдиректива уже ищет угловые атрибуты, поэтому нет указаний на Угловое, что есть переменная.


0

Попробуй это:

<div class="w3-progress-container" ng-hide="hideProgessBar">
    <div id="myBar" class="w3-progressbar w3-green" ng-style="{ width: downloadProgress + '%' }">
      <div id="demo" class="w3-center w3-text-white">{{downloadProgress}}%</div>
    </div>
</div>
JavaScript, angularjs, ионно-рамки,
Похожие вопросы