AngularJS: директива вызова после загрузки представления

У меня странная проблема, которую очень трудно воспроизвести с помощью директивы `dotdotdot1:

  .directive('dotdotdot', ['$timeout', function($timeout) {
    return {
      restrict: 'A',
      link: function(scope, element) {
        scope.$evalAsync(function () {
          element.dotdotdot({
            watch: true,
            wrap: 'letter'
          });
        });

        angular.element('.modal').on('shown.bs.modal', function() {
          angular.element('.modal-nonedit-dotdotdot').dotdotdot({
            watch: true,
            wrap: 'letter'
          });
        });
      }
    };
  }]);

но иногда он вызывается перед тем, как получить мою переменную области видимости с сервера, поэтому его поведение действительно странное...

и у меня есть идеи, что я должен использовать тайм-аут...

но как я могу использовать это? потому что если я установлю

$timeout(function() {
      element.dotdotdot({
        watch: true,
        wrap: 'letter'
      });
    });

чем это работает странным образом тоже...

как я могу правильно установить выполнение директивы?

0 ответов

Другие вопросы по тегам