Конфигурация редактора
Класс хранилища конфигураций редактора.
Config
Класс для работы с конфигурацией редактора.
Методы Config
| Функция | Сигнатура | Описание |
|---|---|---|
| get | get<K extends keyof ConfigOptions>(key: K, defaultValue?: ConfigOptions[K]): ConfigOptions[K] | unknown | Получает значение конфигурации по ключу. |
Интерфейсы Config
typescript
/**
* Интерфейс опций конфигурации.
* @property handle - Уникальный идентификатор для экземпляра редактора
* @property onReady - Функция обратного вызова, вызываемая при готовности редактора
* @property onChange - Функция обратного вызова, вызываемая при изменении содержимого
* @property content - Начальные данные для заполнения редактора
* @property blocks - Массив конструкторов моделей блоков, доступных в редакторе
* @property maxBlocks - Максимальное количество блоков, разрешенное в редакторе
* @property tools - Массив конструкторов моделей инструментов, доступных в редакторе
* @property defaultBlock - Тип блока по умолчанию для вставки (например, "p", "h1")
* @property locale - Текущая локаль для переводов
* @property locales - Локализации
* @property defaultLocale - Резервная локаль по умолчанию
* @property actions - Массив конструкторов моделей действий
* @property extensions - Массив конструкторов моделей расширений
* @property extensionsFixed - Закреплена ли панель расширений
* @property extensionsFixedStyle - Пользовательские стили для закреплённой панели расширений
* @property extensionVisibleTitle - Показывать ли заголовки расширений
* @property autofocus - Автофокусироваться ли на редакторе при инициализации
* @property autofocusDelay - Задержка автофокусировки
* @property selectionZoneElement - Зона выделения виртуальных блоков
* @property historyShortcuts - Использовать ли горячие клавиши для истории
*/
export interface ConfigOptions {
handle?: string;
onReady?: (evt: TexditorEvent) => void;
onChange?: (evt: TexditorEvent) => void;
content?: object[] | string;
blocks?: BlockModelConstructor[];
maxBlocks?: number;
tools?: ToolModelConstructor[];
defaultBlock?: string;
locale?: string;
locales?: LocaleMap[];
defaultLocale?: string;
actions?: ActionModelConstructor[];
extensions?: ExtensionModelConstructor[];
extensionsFixed?: boolean;
extensionsFixedStyle?: false | Record<string, string>;
extensionVisibleTitle?: boolean;
autofocus?: boolean;
autofocusDelay?: number;
selectionZoneElement?: HTMLElement;
historyShortcuts?: boolean;
}
/**
* Интерфейс менеджера конфигурации.
*/
export interface Config {
get: ConfigGetFunction;
}Пример использования Config
javascript
import Texditor from "texditor";
const editor = new Texditor({
handle: "my-editor"
});
const maxBlocks = editor.config.get('maxBlocks');