Эта документация была автоматически переведена ИИ.
JS-колонка используется для создания «пользовательских колонок» в таблицах, которая отображает содержимое ячеек каждой строки с помощью JavaScript. Она не привязана к конкретному полю и подходит для таких сценариев, как производные колонки, комбинированное отображение данных из разных полей, значки статуса, кнопки действий и агрегация удаленных данных.

При рендеринге каждой ячейки JS-колонка предоставляет следующие возможности контекстного API:
ctx.element: DOM-контейнер текущей ячейки (ElementProxy), поддерживающий innerHTML, querySelector, addEventListener и другие методы.ctx.record: Объект записи текущей строки (только для чтения).ctx.recordIndex: Индекс строки на текущей странице (начинается с 0, может зависеть от пагинации).ctx.collection: Метаинформация о коллекции, привязанной к таблице (только для чтения).ctx.requireAsync(url): Асинхронно загружает библиотеку AMD/UMD по URL.ctx.importAsync(url): Динамически импортирует модуль ESM по URL.ctx.openView(options): Открывает настроенное представление (модальное окно/выдвижная панель/страница).ctx.i18n.t() / ctx.t(): Интернационализация.ctx.onRefReady(ctx.ref, cb): Выполняет рендеринг после готовности контейнера.ctx.libs.React / ctx.libs.ReactDOM / ctx.libs.antd / ctx.libs.antdIcons / ctx.libs.dayjs: Встроенные библиотеки React, ReactDOM, Ant Design, Ant Design Icons и dayjs для рендеринга JSX и работы со временем. (ctx.React / ctx.ReactDOM / ctx.antd сохранены для совместимости.)ctx.render(vnode): Рендерит элемент React/HTML/DOM в контейнер по умолчанию ctx.element (текущая ячейка). При многократном рендеринге будет повторно использоваться Root, а существующее содержимое контейнера будет перезаписано.Редактор скриптов JS-колонки поддерживает подсветку синтаксиса, подсказки об ошибках и встроенные фрагменты кода (сниппеты).
Snippets: Открывает список встроенных фрагментов кода, позволяя искать и вставлять их в текущую позицию курсора одним щелчком.Run: Запускает текущий код напрямую. Журнал выполнения выводится на нижнюю панель Logs, поддерживая console.log/info/warn/error и подсветку ошибок.
Вы также можете использовать AI-помощника для генерации кода:
if (!lib) return;).class или [name=...] вместо фиксированных id, чтобы избежать дублирования id в нескольких блоках или модальных окнах.