2016-06-27 3 views
1
HTML code: 
<section ng-controller="GalleryController as gallery" > 
    <div photo-directive ng-repeat="photo in gallery.photos" ng-if="$index>=50*counter && $index<50*(counter+1)"></div> 
</section> 
<script src="js/controller.js"></script> 

controller.js:スコープ変数は、その値

(function() { 
    angular 
    .module('myapp') 
    .controller('GalleryController', GalleryController); 

    GalleryController.$inject = ['GalleryService']; 

    function GalleryController(GalleryService){ 
    var self=this; 
    self.counter=0; 
    } 
})(); 

gallery.photos and photo-directiveを心配しないで取得していません。私の問題は、0の代わりにDOMがロードされてもカウンターに値がないということです。なぜその?そしてコントローラから値を読み取るように、どうすればを修正できますか?

+1

でカウンタを呼び出すことができ、コントローラの 'this' – giorgio

+0

感謝しますあなたは非常に仲良しです –

答えて

0

コントローラーの$ scopeはどこですか? の代わりにコントローラの中に$ scope.counter = 0を追加する必要があります。$ scopeに添付されたものはすべてビューから読み取ることができます。

0

、あなたが `$のscope`にカウンターを追加しないよう、gallery.counter``としてそれにアクセスする必要がありますが、

gallery.counter