2017-10-20 6 views
0

関数が真の値を返している間に特定のdivのみを表示したいのですが、なぜここで動作しないのですか?関数でng-ifが正常に動作しない

var app = angular.module('. . .'); 

app.controller('LoaderController', function($scope, $http,communication) { 

    var loader = this; 
    var isLoading = false; 

    $scope.Loading = false; 

    this.getIsLoading = function(){ 
    return true; // return communication.getIsLoading(); 
    } 


}); 

これは、あなたがNG-場合は、コントローラを呼び出す同じHTMLディレクティブで使用することはできませんdivの

<div id="loader" ng-controller="LoaderController as loaderCtrl" ng-if="loaderCtrl.getIsLoading()"></div> 
+0

'$ scope'構文を' Controller-As'構文と組み合わせて使用​​しないでください。 – JustinJmnz

+1

'ng-if'の代わりに 'ng-show'を使用できます。 until要素がDOMコントローラにロードされているため、呼び出すことができません。また、分離されたスコープと 'as'シンタックスを混在させるので、注意して1つの方法に従ってください。 – Hanif

答えて

3

です。それについて考えてみましょう。コントローラーは、そのメソッドを呼び出すために、角度のために存在する必要があります。

ng-ifをレベル下に移動するか、ng-controllerを1つ上に動かすと動作します。

+0

問題を解決したら、私はそれを解決するとマークします –

+0

喜んで:) – tcmoore

関連する問題