Цей документ було перекладено за допомогою ШІ. Для точної інформації зверніться до англійської версії.
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 у кількох блоках або модальних вікнах.