Я хочу показать некоторый круг прогресса, пока я жду (опрашиваю) сервер. Я использую для этого какой-то плагин jquery Circle-Progress. Я хочу выяснить, каков наиболее распространенный подход к условному запуску круга, а затем в какой-то момент уведомить его об остановке. Затем я хочу, чтобы этот круг завершил полный раунд (дополнительное время) и уведомил контроллер о том, что анимация «круг» завершена.
Что я делаю сейчас, так это создаю директиву для движения по кругу и наблюдаю за некоторыми атрибутами, чтобы знать, когда начинать/останавливать анимацию. Затем, когда наблюдаемый атрибут completed
изменяется на true
, директива завершает выполнение текущего круга, выполняет некоторую дополнительную анимацию (затухание) и вызывает атрибут 'on-change' для уведомления контроллера.
Для меня это выглядит так, будто я делаю это слишком сложно. Мне нужно соблюдать множество атрибутов «когда начинать», «когда останавливаться», а затем дополнительный атрибут для метода обратного вызова.
Это обычный подход для таких ситуаций? Может быть, мне стоит попробовать сделать это с анимацией? Я постоянно сталкиваюсь с этой проблемой, когда хочу интегрировать некоторые существующие jquery UI features
в приложение angular.
P.S. Я хочу, чтобы эту директиву можно было использовать во многих разных контроллерах.
Пример планкера с остановкой анимации и уведомлением контроллера