Quill - заставьте редактор обернуть текст в Div вместо тега P
Я создал текстовый редактор Quill в ReactJS с React-Quill. Я хотел бы обернуть сгенерированный текст в текстовом редакторе тегом Div вместо тега P. Это возможно?
Обзор моего использования: когда текст генерируется / редактируется в редакторе Quill, он дублируется в другом элементе div в другой части страницы. Мы используем этот редактор несколько лет назад, и поэтому он был основан на более старой версии Quill, когда текст был сгенерирован в Div. Недавно мы обновились до Quill 1.0, и когда текст генерируется в P-тегах, он создает нежелательные стили, которые мы не можем удалить. Самое простое и наименее хакерское решение - генерировать теги div вместо p, но я понятия не имею, возможно ли это.
Кто-нибудь знает больше об этом?
Спасибо.
3 ответа
Вы можете просто изменить tagName блока по умолчанию:
var Block = Quill.import('blots/block');
Block.tagName = 'div';
Quill.register(Block);
Рабочий пример: https://codepen.io/anon/pen/brgvPR
Это сработало для меня. Я использую next.js
import dynamic from 'next/dynamic';
const ReactQuill = dynamic(async () => {
const ReactQuill = await import('react-quill');
const { Quill } = ReactQuill.default;
const Block = Quill.import('blots/block');
Block.tagName = 'div';
Quill.register(Block);
return ReactQuill;
}, { ssr: false });
У меня есть это в родном Javascript, и это сработало для меня:
var Block = Quill.import('blots/block');
Block.tagName = 'div';
Block.blotName = "P";
Quill.register(Block);