Restore removeEventListener
This commit is contained in:
parent
cefeeb54c0
commit
9dcb703ec6
2 changed files with 17 additions and 1 deletions
|
@ -42,12 +42,23 @@ const Editor: React.FunctionComponent<IEditorProps> = (props) => {
|
||||||
configuration: props.configuration
|
configuration: props.configuration
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const funcs = new Map<string, () => void>();
|
||||||
for (const event of events) {
|
for (const event of events) {
|
||||||
editorRef.current?.addEventListener(event.name, () => event.func(editorState));
|
const func = (): void => event.func(editorState);
|
||||||
|
editorRef.current?.addEventListener(event.name, func);
|
||||||
|
funcs.set(event.name, func);
|
||||||
}
|
}
|
||||||
|
|
||||||
return () => {
|
return () => {
|
||||||
window.removeEventListener('keyup', onKeyUp);
|
window.removeEventListener('keyup', onKeyUp);
|
||||||
|
|
||||||
|
for (const event of events) {
|
||||||
|
const func = funcs.get(event.name);
|
||||||
|
if (func === undefined) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
editorRef.current?.removeEventListener(event.name, func);
|
||||||
|
}
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
@ -97,6 +97,11 @@ export const ElementsSidebar: React.FC<IElementsSidebarProps> = (props: IElement
|
||||||
);
|
);
|
||||||
|
|
||||||
return () => {
|
return () => {
|
||||||
|
elementRef.current?.removeEventListener(
|
||||||
|
'contextmenu',
|
||||||
|
onContextMenu
|
||||||
|
);
|
||||||
|
|
||||||
window.removeEventListener(
|
window.removeEventListener(
|
||||||
'click',
|
'click',
|
||||||
onLeftClick
|
onLeftClick
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue