I try to toggle unstyled block after clicking on h1 tag.I'm using draftjs-editor and getElementsByTagName method. But when I click on h1 block my text just diappear.I know it's because my state re-renders when I try to toggle unstyled block,but I don't khow how can I update block type without re-rendering state. It's my code:
const handleClickOutside = useCallback(() => {
const contentElement = document.querySelector('.DraftEditor-root');
if (contentElement) {
const currentTag = contentElement.getElementsByTagName('h1');
if (currentTag[0]) {
onEditorStateChange(RichUtils.toggleBlockType(editorState, 'unstyled'));
} else {
console.log('clicked outside');
}
}
}, []);
useEffect(() => {
document.addEventListener('click', handleClickOutside, true);
}, [handleClickOutside]);
I was trying to remove useCallback hook,but it still doesn`t work.I will be very appriciated for any help.