Как вызвать щелчок в пределах угловой директивы - PullRequest
0 голосов
/ 11 марта 2019

Интересно, как я могу вызвать клик из директивы angularjs / 1.6.4.

В основном этот код работает частично:

app.directive('abc', function() {
  return {
    :
    :
    link: function(scope, element, attrs, controller) {
          :
       setTimeout(function(){element[0].click();}, 400);
          :
    }
  }
});

Однако проблема в том, что загрузка страницы занимает более 400 мс. В этом случае это не работает. Поэтому я бы предпочел решение, не зависящее от указанного периода ожидания, а метод, который работал независимо от того, сколько времени потребовалось для загрузки страницы.

1 Ответ

0 голосов
/ 11 марта 2019

Вы должны использовать setTimeout без параметра milliseconds, чтобы он выполнял функцию в следующем тике. Подробнее об этом можно прочитать здесь .

app.directive('abc', function() {
  return {
    :
    :
    link: function(scope, element, attrs, controller) {
          :
       setTimeout(function(){element[0].click();});
          :
    }
  }
});
...