Конфигурация
Вы можете настроить внешний вид и поведение RichText с помощью следующих свойств:
menubar— показать или скрыть верхнюю строку менюtoolbar— настроить видимость панели инструментов и её кнопкиfullscreenMode— открыть редактор в полноэкранном режимеlayoutMode— переключиться между макетами"classic"и"document"value— задать начальное HTML-содержимоеlocale— применить объект локализации при инициализацииdefaultStyles— задать стили по умолчанию для конкретных типов блоковimageUploadUrl— задать конечную точку для загрузки изображенийtriggers— включить @упоминания, #теги и пользовательские триггеры выпадающих списков (см. руководство Упоминания и теги)
Режимы макета
RichText поддерживает два режима макета для области редактирования:
"classic"— область редактирования занимает всю страницу

"document"— область редактирования имитирует страницу документа

Задайте свойство layoutMode при инициализации, чтобы выбрать режим:
const editor = new richtext.Richtext("#root", {
layoutMode: "document"
});
Связанный пример: RichText. Режимы документа и классический
Панель инструментов
Панель инструментов RichText группирует элементы управления в несколько блоков, которые можно настраивать.
Стандартные элементы управления панели инструментов
В панель инструментов RichText можно включить следующие кнопки и элементы управления:
| Кнопка | Описание |
|---|---|
undo | Отменяет последнее действие пользователя |
redo | Повторяет ранее отменённое действие |
style | Выбирает стиль текста (например, заголовок, абзац, цитата) |
font-family | Изменяет шрифт выделенного текста |
font-size | Изменяет размер выделенного текста |
bold | Применяет полужирное форматирование к выделенному тексту |
italic | Применяет курсивное форматирование к выделенному тексту |
underline | Подчёркивает выделенный текст |
strike | Применяет зачёркивание |
subscript | Форматирует текст как подстрочный |
superscript | Форматирует текст как надстрочный |
text-color | Изменяет цвет текста |
background-color | Изменяет цвет фона (выделения) текста |
align | Задаёт выравнивание текста (по левому краю, по центру, по правому краю, по ширине) |
indent | Увеличивает отступ абзаца |
outdent | Уменьшает отступ абзаца |
line-height | Изменяет межстрочный интервал |
quote | Форматирует текст как цитату |
bulleted-list | Создаёт маркированный список |
numbered-list | Создаёт нумерованный список |
link | Вставляет или редактирует гиперссылку |
image | Вставляет изображение |
line | Вставляет горизонтальную линию |
clear | Удаляет всё форматирование выделенного текста |
print | Открывает диалог печати |
fullscreen | Переключает полноэкранный режим |
mode | Переключает между двумя режимами макета: classic и document |
shortcuts | Отображает список доступных сочетаний клавиш |
separator | Добавляет визуальный разделитель между элементами управления |
Используйте свойство toolbar, чтобы задать панель инструментов в виде массива строк с именами элементов управления:
new richtext.Richtext("#root", {
toolbar: [
"undo",
"redo",
"separator",
"style",
"separator",
"font-family",
"font-size",
"separator",
"bold",
"italic",
"underline",
"strike",
"separator",
"text-color",
"background-color",
"separator",
"align",
"line-height",
"outdent",
"indent",
"separator",
"bulleted-list",
"numbered-list",
"quote",
"separator",
"link",
"image",
"separator",
"clear",
"separator",
"fullscreen",
"mode"
// другие кнопки
],
// другие свойства конфигурации
});
Связанный пример: RichText. Полная панель инструментов
Добавление пользовательских элементов управления панели инструментов
Передайте объект в массив toolbar с одним из следующих полей:
type: string— обязательное. Тип элемента управления:"button","richselect"или"colorpicker"id: string— необязательное. Идентификатор пользовательского элемента управления; не должен совпадать с существующими идентификаторамиicon: string— необязательное. Имя CSS-класса иконки; используется совместно с меткойlabel: string— необязательное. Метка кнопки; используется совместно с иконкойtooltip: string— необязательное. Всплывающая подсказка при наведении; по умолчанию равнаlabel, если не заданаcss: string— необязательное. CSS-класс для элемента управления. Встроенные классы:wx-primary,wx-secondaryhandler: () => void— необязательное. Калбэк, выполняемый при нажатии
В приведённом ниже примере сочетаются встроенные кнопки, предустановленный элемент управления типа richselect и две пользовательские кнопки:
new richtext.Richtext("#root", {
toolbar: [
// строковые записи соответствуют встроенным кнопкам
"bold",
"italic",
// предустановленные кнопки принимают только { type: "button", id: string }
{
type: "button",
id: "fullscreen",
},
// для предустановленных элементов richselect/colorpicker задайте соответствующий тип
// записи с несовпадающим типом игнорируются
{
type: "richselect", // type: "button" здесь будет проигнорирован
id: "mode",
},
// пользовательские кнопки (richselect/colorpicker не поддерживаются для пользовательских элементов)
{
type: "button",
id: "some",
label: "Some",
handler: () => {/* пользовательская логика */}
},
{
type: "button",
id: "other",
icon: "wxo-help",
label: "Other",
tooltip: "Some tooltip",
handler: () => {/* пользовательская логика */}
}
],
// другие свойства конфигурации
});
Связанный пример: RichText. Пользовательский элемент управления и упрощённая панель инструментов