целевой элемент DOM с React.createPortal
Я хотел бы получить innerHTML div с "редактором" className, который я передаю через useContext. Как только я получу innerHTML, я добавлю его в div с именем className "getcontent". В настоящее время мой код выдает мне сообщение об ошибке "Ошибка: целевой контейнер не является элементом DOM". Я создал Codesandbox. Заранее спасибо!
1 ответ
Кажется, что вы передаете строку редактора в селектор запросов. Это неверно.
Твой content.editor
равно строке "редактор".
Но когда вы используете querySelector
вам нужно использовать синтаксис, такой как селекторы css (#
- Я бы, .
- учебный класс).
Я думаю, что вы только что упустили эту точку.
document.querySelector('.editor');
Полное решение:
ReactDOM.createPortal(null, document.querySelector(`.${context.editor}`));
У меня теперь работает без ошибок:)
Еще одна функция без точки:
document.getElementsByClassName('editor')[0];