私は頭が動かないように見えるAngularでいくつかの問題に遭遇しています。ウィンドウのスクロール位置が DOM 要素の最後を通過するかどうかを確認するディレクティブを作成しています。
この要素内で ng-repeat を使用してデータを解析しています。私が今抱えている問題は、データがまだ解析されていないため、ディレクティブを初めて実行したときに要素の高さが正しくないことです。
含まれているデータがロードされたら、ディレクティブを実行する方法はありますか? 汚いハックで回避できますが、理想的には、複数回使用されるため、これをすべて 1 つのディレクティブにまとめたいと思います。
コード例は次のとおりです。
<div scrollspy>
<a href="#" ng-repeat="item in items"></a>
</div>
angular.module('module').directive('scrollspy', ['$window', function ($window) {
return function (scope, element) {
// element height here is only 30 because our data is not loaded yet.
// I whish to execute this code when all items are parsed in the DOM
}
}])
ありがとうございました!