Когда я перетаскиваю элемент, который я нарисовал на холсте, мне также хотелось бы, чтобы его живые x
и y
координаты отображались за пределами холста.Обновление угловой модели от события перетаскивания мыши
Беглый описание ..
Вид:
//some HTML, including a canvas
{{xCoord}} </br>
{{yCoord}}
Директива: (onDrag()
вызывается всякий раз, когда пользователь нажимает на и перетаскивает объект)
someCanvasObject.onDrag() {
$scope.xCoord = canvasObject.x;
$scope.yCoord = canvasObject.y;
$scope.$digest();
}
Однако, когда я использую $scope.$digest()
, чтобы изменить выведенные координаты, я получаю «$ apply уже выполняется» ошибка becau se $digest()
быстро вызывается перетаскиванием, быстро изменяя координаты.
Есть ли альтернативный способ использования $digest()
, который не будет конфликтовать при быстром использовании описанным выше способом?
(мне сказали, $$phase
плохая практика.)
Можете ли вы сделать демо? – m59
Вот пример, где вы можете спамить $ digest или $ apply без проблем. http://jsbin.com/IbAfesur/22/edit. Вы действительно должны включить демо-версию, чтобы ваша проблема была более ясной. Я не вижу, в чем проблема. – m59
Спасибо :) И извинения, я обновил вопрос, так что это немного более подробно. Пожалуйста, дайте мне знать, если нужно больше! –