2016-07-12 6 views
1

У меня есть таблица в HTML-коде и кнопки с ng-show=some_property вещь, которую я хочу сделать, это:Как выполнить функцию после ng-show?

Button1, который показывает таблицу, в которой находится field1, на котором я хочу, чтобы изменить фокус непосредственно из Button1.

Но проблема в том, что я не могу установить button1 как сфокусированный, потому что он невидим. Я пытаюсь использовать $watch, чтобы обнаружить изменение some_property, но оно обнаружит его еще до того, как станет видно стол.

Так что на самом деле мой вопрос заключается в том, как сделать что-то вроде триггера после ng-show не во время или непосредственно перед ним.

Благодарим за помощь.

ответ

0

Используйте timeout() или $timeout(), если хотите, чтобы угловой удар в цикле переваривания. Идея заключается в том, что JS является однопоточным, поэтому вы должны разрешить текущий вызов, и только после этого ваш код сможет увидеть результаты.

$scope.$watch('myShow', function() { if(whatever) $timeout(function(){ yourCodeHere(); }); });

 Смежные вопросы

  • Нет связанных вопросов^_^