как обновить директивные данные в angularjs - PullRequest
0 голосов
/ 10 января 2019

Я сделал директиву, которая строит дерево, чтобы видеть, кто является родителем или чьим ребенком. когда я захожу на свою страницу, она показывает нужное мне дерево, но когда я захожу на какую-то другую страницу в моем приложении и затем направляюсь на страницу, на которой строится дерево, оно показывает мне неправильное дерево. Я создаю узлы для поиска с помощью scope. $ Id в директиве, поэтому, когда я впервые направляюсь на страницу, «идентификаторы» различаются, а когда я иду на какой-то другой маршрут и затем иду на тот же маршрут, «идентификаторы» различаются, поэтому добавляет данные к предыдущему дереву, которое уже построено, а не заменяет его. Поэтому я хочу всегда сбрасывать данные всякий раз, когда пользователь переходит на эту страницу. Как я могу сделать это в моем приложении angularjs?

return {
  restrict : 'A',
  link : function(scope, element, attrs){
           var parentScope = findScope(scope, attrs.parentModel);
           collectRelations(parentScope, attrs.parentModel, scope, 
            attrs.ngModel);


    $timeout(function(){
      if (initialized)
        return;

      buildHierarchies();
      initializeStates();

      initialized = true;
    }, 0);
  }
}
...