Interface: HasContent
Expand
Интерфейс для элементов UI, которые содержат контент для отображения.
Поддерживает два формата: обычный текст и HTML разметку.
Remarks
Форматы контента:
plain/text— обычный текст, спецсимволы экранируютсяhtml— HTML разметка, фильтруется от небезопасного кода
HTML фильтрация:
- Разрешены:
<h1>-<h6>,<p>,<div>,<span>,<strong>,<em>,<ul>,<ol>,<li>,<br>,<table>,<tr>,<td>, и т.д. - Запрещены:
<script>,<iframe>,<object>, события (onclick и т.д.) - Все атрибуты кроме базовых удаляются
- взаимодействие с HTML ограничено (ссылки не интерактивные)
Extended by
Properties
content
readonlycontent:string
Содержимое элемента, предназначенное для отображения пользователю.
Remarks
Формат:
- Если contentType = 'plain/text' — обычная строка текста
- Если contentType = 'html' — строка с HTML разметкой
Ограничения:
- Не должна быть пустой (может вызвать проблемы отображения)
- Максимальный размер зависит от браузера (обычно несколько MB)
- HTML содержимое фильтруется в целях безопасности
Example
// Обычный текст
{
content: 'Это простой текст',
contentType: 'plain/text'
}
// HTML
{
content: '<h2>Заголовок</h2><p>Абзац текста</p>',
contentType: 'html'
}
contentType?
readonlyoptionalcontentType:UiContentType
Тип содержимого, определяющий как интерпретировать поле content.
Remarks
Значения:
-
'plain/text'— содержимое это обычный текст- Все символы отображаются как есть
-
'html'— содержимое это HTML разметка- HTML теги интерпретируются и отображаются
- Небезопасные теги и атрибуты удаляются
Default
'plain/text'
Example
// HTML — теги интерпретируются
{
content: 'Текст с <strong>жирным</strong> словом',
contentType: 'html'
}
// Отобразится: "Текст с жирным словом" (жирное)
// Без указания — используется plain/text
{
content: 'Простое содержимое'
// Эквивалент: contentType: 'plain/text'
}
See
UiContentType — возможные значения