Поэтому я создаю диаграмму AngularJs, которая использует Angular Library для создания диаграммы на теге Canvas. Однако, когда я перетаскиваю новый набор данных на холст, чтобы перерисовать его, он продолжает хранить старые данные. То, что я пытаюсь выполнить, это If (есть новые данные) {очистить холст}. Я знаю, что мне нужно использовать:
canvasReset.clearRect(0, 0, canvas.width, canvas.height);
где-то, но то, что я действительно ищу, - это обработчик событий, который поможет мне определить, находится ли что-либо на холсте, и если это его очистить. Тем не менее, я не ищу щелчок мыши мыши и т.д. Но что-то, что обычно выглядит, чтобы увидеть, используется ли холст.
Короткий ответ, вы не можете. Но вы можете поймать mouseevnets, или вы можете обернуть функции рисования холста ctx, например
var fill = ctx.fill;
ctx.fill = function(){
fill.apply(this, arguments);
setDirty();
};