Перейти к содержимому
ФреймворкJavaScript

Параграф: базовый текстовый блок

Текстовый блок по умолчанию. Поддерживает полноценное строчное форматирование: полужирный, курсив, ссылки и цвет. Пустые параграфы верхнего уровня не попадают в сохраняемые данные, если не включён preserveBlank. Пустые параграфы, вложенные в другой блок (выноска, сворачиваемый список, колонка, …), сохраняются всегда.

Импорт

TypeScript
import { Paragraph } from '@bloklabs/core/tools';

Конфигурация

ОпцияТипПо умолчаниюОписание
placeholderstring"Write something or press / to select a tool" (localised)

Плейсхолдер, который показывается, когда блок пуст и находится в фокусе.

preserveBlankbooleanfalse

Если true, пустые блоки-параграфы остаются в сохраняемых данных. Есть одно исключение. Документ из одного пустого блока инструмента по умолчанию всегда сохраняется как blocks: [], независимо от этой опции.

styles.sizestringundefined

Собственное значение CSS-свойства font-size (например, "18px", "1.25rem").

styles.lineHeightstringundefined

Собственное значение CSS-свойства line-height (например, "1.8", "28px").

styles.marginTopstringundefined

Собственное значение CSS-свойства margin-top (например, "12px", "0.75rem").

styles.marginBottomstringundefined

Собственное значение CSS-свойства margin-bottom.

Формат данных

TypeScript
interface ParagraphData {
  text: RichText;           // Runs of text with marks:
                            // [{ "text": "Hello " }, { "text": "world", "marks": { "bold": true } }]
                            // The tool class itself reads and writes HTML (ParagraphToolData)
  textColor?: string;       // Block colour preset, present when set
  backgroundColor?: string; // Block background colour preset, present when set
}
JSON
{
  "id": "abc123",
  "type": "paragraph",
  "data": {
    "text": [{ "text": "Hello " }, { "text": "world", "marks": { "bold": true } }]
  }
}

Пример использования

TypeScript
import { Blok } from '@bloklabs/core';
import { Paragraph } from '@bloklabs/core/tools';

const editor = new Blok({
  holder: 'editor',
  tools: {
    paragraph: {
      class: Paragraph,
      placeholder: 'Start writing…',
      preserveBlank: false,
    },
  },
});