Detta dokument har översatts av AI. För eventuella felaktigheter, se den engelska versionen
JS-kolumnen används för "anpassade kolumner" i tabeller och renderar innehållet i varje rads cell med JavaScript. Den är inte bunden till ett specifikt fält och passar för scenarier som härledda kolumner, kombinerade visningar över flera fält, statusbrickor, åtgärdsknappar och aggregering av fjärrdata.

När varje cell renderas tillhandahåller JS-kolumnen följande kontext-API:er:
ctx.element: DOM-behållaren för den aktuella cellen (ElementProxy), med stöd för innerHTML, querySelector, addEventListener med mera.ctx.record: Det aktuella radobjektet (skrivskyddat).ctx.recordIndex: Radindex inom den aktuella sidan (börjar från 0, kan påverkas av paginering).ctx.collection: Metainformationen för den samling som är bunden till tabellen (skrivskyddad).ctx.requireAsync(url): Laddar asynkront ett AMD/UMD-bibliotek via URL.ctx.importAsync(url): Importerar dynamiskt en ESM-modul via URL.ctx.openView(options): Öppnar en konfigurerad vy (modal/låda/sida).ctx.i18n.t() / ctx.t(): Internationalisering.ctx.onRefReady(ctx.ref, cb): Renderar när behållaren är redo.ctx.libs.React / ctx.libs.ReactDOM / ctx.libs.antd / ctx.libs.antdIcons / ctx.libs.dayjs: Inbyggda bibliotek som React, ReactDOM, Ant Design, Ant Design-ikoner och dayjs för JSX-rendering och tidsbehandling. (ctx.React / ctx.ReactDOM / ctx.antd behålls för kompatibilitet.)ctx.render(vnode): Renderar ett React-element/HTML/DOM till standardbehållaren ctx.element (den aktuella cellen). Flera renderingar återanvänder Root och skriver över befintligt innehåll i behållaren.Skriptredigeraren för JS-kolumnen stöder syntaxmarkering, felmeddelanden och inbyggda kodsnuttar (Snippets).
Snippets: Öppnar listan över inbyggda kodsnuttar, så att ni kan söka och infoga dem vid den aktuella markörpositionen med ett klick.Run: Kör den aktuella koden direkt. Körningsloggen visas i Logs-panelen längst ner, med stöd för console.log/info/warn/error och felmarkering.
Ni kan också använda en AI-medarbetare för att generera kod:
if (!lib) return;).class- eller [name=...]-väljare istället för fasta id:n för att förhindra dubbla id:n över flera block eller modaler.