画布组件卸载清理资源
This commit is contained in:
@@ -277,16 +277,6 @@
|
|||||||
clipData.left = x;
|
clipData.left = x;
|
||||||
clipData.img_width = elInfo.width;
|
clipData.img_width = elInfo.width;
|
||||||
clipData.img_height = elInfo.height;
|
clipData.img_height = elInfo.height;
|
||||||
|
|
||||||
if (!el.value) return;
|
|
||||||
const elh = el.value.offsetHeight;
|
|
||||||
const elsh = el.value.scrollHeight;
|
|
||||||
const elst = el.value.scrollTop;
|
|
||||||
if (y < elst) {
|
|
||||||
el.value.scrollTop = y;
|
|
||||||
} else if (y + clipInfo.height > elst + elh) {
|
|
||||||
el.value.scrollTop = y + clipInfo.height - elh;
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
const mouseup = () => {
|
const mouseup = () => {
|
||||||
window.removeEventListener("mousemove", mousemove);
|
window.removeEventListener("mousemove", mousemove);
|
||||||
|
|||||||
@@ -279,9 +279,7 @@
|
|||||||
layerManager: props.layerManager,
|
layerManager: props.layerManager,
|
||||||
canvas: props.canvas,
|
canvas: props.canvas,
|
||||||
toolManager: props.toolManager,
|
toolManager: props.toolManager,
|
||||||
}).then(res=>{
|
})
|
||||||
console.log("========",res);
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -530,15 +530,15 @@ onBeforeUnmount(() => {
|
|||||||
// return; // 开发环境下不卸载组件
|
// return; // 开发环境下不卸载组件
|
||||||
// }
|
// }
|
||||||
console.log("onBeforeUnmount 组件卸载,清理资源...");
|
console.log("onBeforeUnmount 组件卸载,清理资源...");
|
||||||
// canvasManager?.dispose?.();
|
canvasManager?.dispose?.();
|
||||||
// commandManager?.dispose?.();
|
commandManager?.dispose?.();
|
||||||
// layerManager?.dispose?.();
|
layerManager?.dispose?.();
|
||||||
// keyboardManager?.dispose?.();
|
keyboardManager?.dispose?.();
|
||||||
// toolManager?.dispose?.();
|
toolManager?.dispose?.();
|
||||||
// liquifyManager?.dispose?.();
|
liquifyManager?.dispose?.();
|
||||||
// selectionManager?.dispose?.();
|
selectionManager?.dispose?.();
|
||||||
// redGreenModeManager?.dispose?.();
|
redGreenModeManager?.dispose?.();
|
||||||
// minimapManager?.dispose?.();
|
// minimapManager?.dispose?.();
|
||||||
canvasManager = null;
|
canvasManager = null;
|
||||||
commandManager = null;
|
commandManager = null;
|
||||||
layerManager = null;
|
layerManager = null;
|
||||||
|
|||||||
@@ -2303,9 +2303,9 @@ export class LayerManager {
|
|||||||
*/
|
*/
|
||||||
dispose() {
|
dispose() {
|
||||||
// 清空画布
|
// 清空画布
|
||||||
if (this.canvas) {
|
// if (this.canvas) {
|
||||||
this.canvas.clear();
|
// this.canvas.clear();
|
||||||
}
|
// }
|
||||||
|
|
||||||
// 清空图层数据
|
// 清空图层数据
|
||||||
if (this.layers && this.layers.value) {
|
if (this.layers && this.layers.value) {
|
||||||
|
|||||||
@@ -728,18 +728,7 @@ export class KeyboardManager {
|
|||||||
*/
|
*/
|
||||||
dispose() {
|
dispose() {
|
||||||
// 移除事件监听
|
// 移除事件监听
|
||||||
this.container.removeEventListener("keydown", this._handleKeyDown);
|
this.removeEvents();
|
||||||
this.container.removeEventListener("keyup", this._handleKeyUp);
|
|
||||||
this.container.removeEventListener("paste", this._handlePaste);
|
|
||||||
|
|
||||||
// 如果有触摸事件,也移除它们
|
|
||||||
if (this.isTouchDevice) {
|
|
||||||
this.container.removeEventListener("touchstart", this._handleTouchStart);
|
|
||||||
this.container.removeEventListener("touchmove", this._handleTouchMove);
|
|
||||||
this.container.removeEventListener("touchend", this._handleTouchEnd);
|
|
||||||
this.container.removeEventListener("touchcancel", this._handleTouchEnd);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 清除引用
|
// 清除引用
|
||||||
this.toolManager = null;
|
this.toolManager = null;
|
||||||
this.commandManager = null;
|
this.commandManager = null;
|
||||||
|
|||||||
Reference in New Issue
Block a user