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

При рендеринге каждой ячейки JS Column предоставляет следующие возможности контекста:
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 / ctx.libs.lodash / ctx.libs.math / ctx.libs.formula: Встроенные React / ReactDOM / Ant Design / Иконки Ant Design / dayjs / lodash / math.js / formula.js и другие общие библиотеки для рендеринга JSX, обработки времени, манипулирования данными и математических вычислений. (ctx.React / ctx.ReactDOM / ctx.antd по-прежнему сохранены для совместимости.)ctx.render(vnode): Рендерит React-элемент/HTML/DOM в контейнер по умолчанию ctx.element (текущая ячейка). При многократном рендеринге будет повторно использоваться Root, перезаписывая существующее содержимое контейнера.Редактор скриптов JS Column поддерживает подсветку синтаксиса, подсказки об ошибках и встроенные фрагменты кода (Snippets).
Snippets: Открывает список встроенных фрагментов кода, которые можно искать и вставлять в текущую позицию курсора одним щелчком мыши.Run: Прямой запуск текущего кода, журнал выполнения выводится на нижнюю панель Logs, поддерживается console.log/info/warn/error и подсветка ошибок.
Можно комбинировать с AI-сотрудниками для генерации кода:
if (!lib) return;).class или [name=...], избегая использования фиксированных id, чтобы предотвратить дублирование id в нескольких блоках/модальных окнах.