Hey everybody !

Aujourd'hui petit soucis sur un des mes projets Angular JS. En effet j'utilise le plugin nanoScroller.js pour générer de jolie Scrollbar.

Le problème étant que quand je lance ma function le bloc contient un ng-repeat (Les datas arrives d'une API REST) . NanoScroller se lance bien pour générer la scrollBar mais comme les éléments sont long a se faire "binding" dans le html (Je sais pas si c'est le terme) la scrollBar n'est pas générer correctement.

En gros il n'est pas capable de calculer la bonne hauteur de bloc car le ng-repeat est long à ce montre en place.

Il y a t'il un moyen de détecter quand est ce que le binding de la page est terminé ? Au delas de mon problèmes de scrollbar je pense que c'est un élément relativement important qu'il faudrait que je prenne en compte sur tous mon projet car cetainne page sont longue à ce mettre en place alors que toutes les datas sont bien présentes côté Controller.

Merci pour votre aide .

Plugin : https://jamesflorentino.github.io/nanoScrollerJS/

1 réponse


Polaris
Auteur

Bon j'ai résolus mon problème en attachant une directive qui détecte les changements de tailles sur le bloc ... C'est pas ce qu'il y'a de mieux je pense mais si ça peut servir ...

//--------------------------------------------
// Directive : heightTarget
// Description : Detect  change from the height 
//--------------------------------------------
'use strict';
angular.module('height_target',[]).directive( 'heightTarget', function() {
  return {
    restrict: 'A',
    link: function( scope, elem, attrs ) {
      scope.$watch(function(){return elem.height(); }, function(newValue, oldValue) {
        if(newValue != oldValue){
         #to do ...
        };
      });
    }
  }
});