Rendering
Renderointi valvoo, kuinka jokainen sarakkeen solu näytetään. Sen sijaan, että näyttäisit raakatiedon, renderointi muuttaa kunkin solun tiedot tyylitetyksi tekstiksi, kuvakkeiksi, merkinnöiksi, linkeiksi, toimintopainikkeiksi tai muuksi visuaaliksi, joka tekee tiedon lukemisesta nopeampaa ja toimimisen helpompaa.
Renderointi tapahtuu kokonaan selaimessa. Palvelin lähettää raakatiedot ja asiakas käsittelee esityksen, jolloin 'Taulukko' on nopea riippumatta rivimäärästä.
Määritä renderointi sarakkeelle käyttämällä setRenderer(). Renderointi soveltuu kaikille kyseisen sarakkeen soluille:
TextRenderer<MusicRecord> renderer = new TextRenderer<>();
renderer.setTheme(Theme.PRIMARY);
table.addColumn("title", MusicRecord::getTitle).setRenderer(renderer);
Jos tarvitset vain muuttaa tai muotoilla soluarvon ilman DOM-rakenteen tuottamista, käytä arvon tarjoajaa sen sijaan. Renderoijat luovat ylimääräisiä DOM-elementtejä jokaiselle renderöidylle riville, mikä aiheuttaa kustannuksia renderöintihetkellä. Varaa renderointi visuaaliselle ulostulolle, kuten kuvakkeille, merkinnöille, painikkeille tai muille HTML-pohjaisille esityksille.
webforJ sisältää valmiita renderoijia yleisimmille käyttötapauksille. Jos jokin on erityistä sovelluksellesi, laajenna Renderer ja käytä build() palauttaaksesi lodash-mallin merkkijonon, joka toimii selaimessa jokaiselle solulle.
Yleisimmät renderoijat
Seuraavat esimerkit käyvät läpi neljä usein käytettyä renderoijaa ja näyttävät setRenderer()-mallin käytännössä.
TextRenderer
Näyttää solun sisällön yksinkertaisena tai tyyliteltynä tekstinä. Voit soveltaa teeman väriä tai tekstin muotoilua sarakkeeseen ilman sen rakenteen muuttamista, esimerkiksi korostamalla prioriteettikenttää punaiseksi tai tekemällä avaintunnisteen lihavoiduksi.
TextRenderer<MusicRecord> renderer = new TextRenderer<>();
renderer.setTheme(Theme.PRIMARY);
renderer.setDecorations(EnumSet.of(TextDecoration.BOLD));
table.addColumn("title", MusicRecord::getTitle).setRenderer(renderer);
BadgeRenderer
Suojaa solun arvon merkintäelementtiin. Tukee teemoja, laajuuksia, väri-istutusta (automaattiset erilaiset värit jokaiselle ainutlaatuiselle arvolla) ja valinnaista etukuvaketta. Käytä sitä kategorisille arvoille, kuten tageille, tyypeille tai tunnisteille, joissa erityiset visuaaliset komponentit auttavat käyttäjiä skannaamaan ja vertaamaan rivejä nopeasti.
BadgeRenderer<MusicRecord> renderer = new BadgeRenderer<>();
renderer.setTheme(BadgeTheme.PRIMARY);
table.addColumn("musicType", MusicRecord::getMusicType).setRenderer(renderer);
BooleanRenderer
Korvataan true, false ja null kuvakkeilla. Käytä sitä kaikille tosi/epätosi -sarakkeille, joissa kuvake välittää arvon nopeammin kuin teksti, kuten ominaisuuksien lipuissa, aktiivisessa/epäkiitollisessa tilassa tai opt-in-kentissä.
// Oletuskirjaimet
BooleanRenderer<Task> renderer = new BooleanRenderer<>();
table.addColumn("completed", Task::isCompleted).setRenderer(renderer);
// Mukautetut kuvakkeet
BooleanRenderer<Task> custom = new BooleanRenderer<>(
TablerIcon.create("thumb-up").setTheme(Theme.SUCCESS),
TablerIcon.create("thumb-down").setTheme(Theme.DANGER)
);
table.addColumn("completed", Task::isCompleted).setRenderer(custom);
CurrencyRenderer
Muotoilee numeerisen arvon valuuttamääräksi käyttäen annettua Locale-sääntöä. Käytä sitä kaikille rahasarakkeille, joissa paikannettavalla muotoilulla (symboli, erottimet, desimaalipaikat) on merkitystä.
// Yhdysvaltain dollarit
table.addColumn("cost", MusicRecord::getCost)
.setRenderer(new CurrencyRenderer<>(Locale.US));
// Eurot saksalaisella paikalla
table.addColumn("retail", MusicRecord::getRetail)
.setRenderer(new CurrencyRenderer<>(Locale.GERMANY));
Ehdollinen renderointi
ConditionalRenderer valitsee eri renderoijan per solun sen arvon perusteella. Ehtoja arvioidaan järjestyksessä; ensimmäinen osuma voittaa. Yleinen varmuus voidaan asettaa otherwise()-menetelmällä.
Seuraava esimerkki näyttää ehdollisen renderoinnin sovellettuna laskun tila-sarakkeeseen, vaihtaen BadgeRenderer-variantteihin sen arvon perusteella:
Näytä koodi
- InvoiceListView.java
- Invoice.java
- InvoiceService.java
Se toimii myös hyvin numeeristen kynnysten kanssa. Tämä palvelin kojelauta käyttää ConditionalRenderer-menetelmää vaihtaakseen ProgressBarRenderer-teemoja CPU- ja muistin käyttöasteiden mukaan:
Näytä koodi
- ServerDashboardView.java
- Server.java
- ServerService.java
Ehto API
Ehdot rakennetaan staattisilla tehdasmenetelmillä ja niitä voidaan yhdistää and(), or() ja negate().
// Arvon yhtä suuri
Condition.equalTo("active")
Condition.equalToIgnoreCase("active")
Condition.in("active", "pending", "new")
// Numeeriset vertailut
Condition.greaterThan(100)
Condition.lessThanOrEqual(0)
Condition.between(10, 50)
// Boolean / tyhjyyttä
Condition.isTrue()
Condition.isFalse()
Condition.isEmpty()
// Merkkijonojen vastaavuus
Condition.contains("error")
Condition.containsIgnoreCase("warn")
// Koosteen yhdistelmä
Condition.greaterThan(0).and(Condition.lessThan(100))
Condition.isEmpty().or(Condition.equalTo("N/A"))
Condition.isTrue().negate()
// Ristilokero tarkistus
Condition.column("status").equalTo("active")
// Raaka JavaScript-ilmaisu
Condition.expression("cell.value % 2 === 0")
Koostava renderointi
CompositeRenderer yhdistää useita renderoijia vierekkäin yhdessä solussa joustavan asettelun avulla. Käytä sitä ikonin parittamiseen tekstin kanssa, näyttääksesi avatarin nimen vieressä tai pinotaksesi merkinnän tilan indikaattorin viereen.
Alempana oleva työntekijäluettelo käyttää CompositeRenderer-toimintoa Työntekijä -sarakkeessa näyttääkseen automaattisesti luodun avatarin kunkin työntekijän nimen vieressä:
Näytä koodi
- EmployeeDirectoryView.java
Mukautetut renderoijat
Kun mikään valmiista renderoijista ei sovi tarpeeseesi, laajenna Renderer ja toteuta build(). Tämä menetelmä palauttaa lodash-mallin merkkijonon, joka toimii selaimessa jokaiselle sarakkeelle, ilmaistuna HTML:n ja JavaScriptin seoksena.
Mukautetun renderoijan luominen
Vaihe 1: Laajenna Renderer oman rivitietotyyppisi kanssa.
public class RatingRenderer extends Renderer<MusicRecord> {
Vaihe 2: Ylikirjoita build() ja palauta lodash-mallin merkkijono.
@Override
public String build() {
return /* html */"""
<%
const rating = Number(cell.value);
const stars = Math.round(Math.min(Math.max(rating, 0), 5));
const full = '★'.repeat(stars);
const empty = '☆'.repeat(5 - stars);
%>
<span><%= full %><%= empty %></span>
<span style="color: var(--dwc-color-body-text)">(<%= rating.toFixed(1) %>)</span>
""";
}
}
Vaihe 3: Määritä renderoija sarakkeelle.
table.addColumn("rating", MusicRecord::getRating)
.setRenderer(new RatingRenderer());
Lisätietoja Lodash-syntaksista, jota käytetään solutietojen hakemiseen ja informatiivisten renderöijien luomiseen, katso tämä viittausosio.
Useiden sarakkeiden pääsy
Käytä cell.row.getValue("columnId") lukeaksesi sisarsarakkeita mallissa. Tämä on hyödyllistä yhdistämiseen, deltajen laskemiseen tai liittyvien tietojen ristiinviittaamiseen.
public class ArtistAvatarRenderer extends Renderer<MusicRecord> {
@Override
public String build() {
return /* html */"""
<%
const name = cell.row.getValue("artist");
const initials = name
? name.split(' ').map(w => w.charAt(0)).join('').substring(0, 2).toUpperCase()
: '?';
%>
<div style="display: flex; align-items: center; gap: 8px;">
<div style="width: 28px; height: 28px; border-radius: 50%;
background: var(--dwc-color-primary); color: white;
display: flex; align-items: center; justify-content: center;
font-size: 11px; font-weight: 600;">
<%= initials %>
</div>
<span><%= name %></span>
</div>
""";
}
}
Klikkaustapahtumat
IconButtonRenderer ja ButtonRenderer tarjoavat addClickListener() automaattisesti. Klikkaustapahtuma antaa pääsyn rivin tietoesineeseen e.getItem()-menetelmällä.
IconButtonRenderer<MusicRecord> deleteBtn = new IconButtonRenderer<>(
TablerIcon.create("trash").setTheme(Theme.DANGER)
);
deleteBtn.addClickListener(e -> {
MusicRecord record = e.getItem();
repository.delete(record);
table.refresh();
});
table.addColumn("delete", r -> "").setRenderer(deleteBtn);
Suorituskyky: laiska renderointi 25.12
Sarakkeille, jotka käyttävät visuaalisesti kalliita renderoijia, kuten merkintöjä, edistymispalkkeja, avatareita tai verkkokomponentteja, ota käyttöön laiska renderointi parantaaksesi vierityksen suorituskykyä.
table.addColumn("status", Order::getStatus)
.setRenderer(new BadgeRenderer<>())
.setLazyRender(true);
Kun setLazyRender(true) on asetettu sarakkeelle, solut näyttävät kevyen animaation paikan pitävän elementin, kun käyttäjä vierittää. Varsinaiset solun sisällöt renderoidaan, kun vieritys pysähtyy. Tämä on sarakekohtainen asetus, joten voit ottaa sen käyttöön vain niille sarakkeille, jotka hyötyvät siitä.
Näytä koodi
- LazyRenderView.java
Solun renderoijat luovat enemmän entiteettejä DOM:ssa, mikä tarkoittaa enemmän CPU-työtä renderöinnin aikana, riippumatta siitä, mikä renderoija sen luo.
Laiska renderointi voi auttaa vähentämään suorituskykyvaikutuksia, jos renderointi on todella tarpeen. Jos sinun tarvitsee vain muuttaa tai muotoilla arvoa, etkä luo monimutkaista DOM:ia, käytä sen sijaan arvon tarjoajaa arvon muuttamiseksi.
Valmiiden renderoijien viite
webforJ tuottaa kattavan joukon renderoijia yleisimmille käyttötapauksille. Määritä mikä tahansa niistä sarakkeeseen käyttämällä column.setRenderer(renderer).
Näytä koodi
- ProductCatalogView.java
- Product.java
- ProductService.java
Tekstit ja etiketti
TextRenderer - tyylitelty teksti, jossa valinnainen teema ja koristeet
Näyttää solun sisällön yksinkertaisena tai tyyliteltynä tekstinä. Tukee teeman värejä ja tekstimuotoiluja, kuten lihavointi, kursivointi ja alleviivaus.
TextRenderer renderer = new TextRenderer<>();
renderer.setTheme(Theme.PRIMARY);
renderer.setDecorations(EnumSet.of(TextDecoration.BOLD));
table.addColumn("title", MusicRecord::getTitle).setRenderer(renderer);
BadgeRenderer - arvo, joka näytetään merkintäelementissä
Suojaa solun arvon merkintäelementtiin. Tukee teemoja, laajuuksia, väri-istutusta (automaattiset erilaiset värit jokaiselle ainutlaatuiselle arvolla) ja valinnaista etukuvaketta.
BadgeRenderer renderer = new BadgeRenderer<>();
renderer.setTheme(BadgeTheme.PRIMARY);
table.addColumn("musicType", MusicRecord::getMusicType).setRenderer(renderer);
NullRenderer - paikkamerkki null- tai tyhjille arvoille
Renderoi konfiguroitavan palautusmerkkijonon, kun solun arvo on null tai tyhjää; muuten renderoi arvon sellaisenaan.
table.addColumn("notes", MusicRecord::getNotes)
.setRenderer(new NullRenderer<>("N/A"));
Tila ja indikaattorit
BooleanRenderer - true/false/null esitetään kuvakkeina
Korvataan true, false ja null arvot kuvakkeilla. Oletuksena shakki, risti ja viiva.
// Oletuskirjaimet
BooleanRenderer renderer = new BooleanRenderer<>();
table.addColumn("completed", Task::isCompleted).setRenderer(renderer);
// Mukautetut kuvakkeet
BooleanRenderer custom = new BooleanRenderer<>(
TablerIcon.create("thumb-up").setTheme(Theme.SUCCESS),
TablerIcon.create("thumb-down").setTheme(Theme.DANGER)
);
StatusDotRenderer - värillinen indikaattori piste solutekstin vieressä
Renderoi pieni värillinen piste solun arvon vasemmalle puolelle. Karttaa yksittäisiä arvoja teemoihin, CSS-värijonoksi tai java.awt.Color-instansseihin.
StatusDotRenderer renderer = new StatusDotRenderer<>();
renderer.addMapping("Active", Theme.SUCCESS);
renderer.addMapping("Pending", Theme.WARNING);
renderer.addMapping("Cancelled", Theme.DANGER);
table.addColumn("status", Order::getStatus).setRenderer(renderer);
Numerot, valuutta ja päivämäärät
CurrencyRenderer - sijaintitietoista valuutan muotoilua
Muotoilee numeerisen arvon valuuttamääräksi käyttäen annettua Locale-sääntöä.
// Yhdysvaltain dollarit
table.addColumn("cost", MusicRecord::getCost)
.setRenderer(new CurrencyRenderer<>(Locale.US));
// Eurot saksalaisella paikalla
table.addColumn("retail", MusicRecord::getRetail)
.setRenderer(new CurrencyRenderer<>(Locale.GERMANY));
PercentageRenderer - prosentti, jossa valinnainen mini edistymispalkki
Näyttää numeerisen arvon prosenttina. Aseta toinen konstruktorin argumentti false:ksi estääksesi ohuen edistymispalkin renderoinnin tekstin alle.
PercentageRenderer renderer = new PercentageRenderer<>(Theme.PRIMARY, true);
table.addColumn("completion", Task::getCompletion).setRenderer(renderer);
ProgressBarRenderer - täysi edistymispalkki numeerisille arvoille
Renderoi koko leveydeltä edistymispalkki, jossa on konfiguroitavat minimiset ja maksimaaliset rajat, määrittämättömässä tilassa, ja juovikkaassa tai animoidussa näyttötilassa. Käytä setText()-menetelmää yhdessä lodash-ilmaisun kanssa peittääksesi mukautetun tekstin palkin päälle.
ProgressBarRenderer renderer = new ProgressBarRenderer<>();
renderer.setMax(100);
renderer.setTheme(Theme.SUCCESS);
renderer.setTextVisible(true);
renderer.setText("<%= cell.value %>/100");
table.addColumn("progress", Task::getProgress).setRenderer(renderer);
MaskedTextRenderer - merkkijonon muotoilu tekstimaskilla
Soveltuu merkintämaskia merkkijonon arvoon. # vastaa mitä tahansa numeroa; kirjaimelliset merkit säilytetään. Katso tekstimaskin säännöt kaikista tuetuista maskimerkeistä.
table.addColumn("ssn", Employee::getSsn)
.setRenderer(new MaskedTextRenderer<>("###-##-####"));
MaskedNumberRenderer - numeerinen arvo, joka on muotoiltu numeromaskilla
Muotoilee numeerisen arvon mallimerkkijonolla, jossa on sijainnista riippuvaisia erottimia. 0 pakottaa numeron; # on valinnainen. Katso numeromaskin säännöt kaikista tuetuista maskimerkeistä.
table.addColumn("price", Product::getPrice)
.setRenderer(new MaskedNumberRenderer<>("###,##0.00", Locale.US));
MaskedDateTimeRenderer - päivämäärä/aika-arvo päivämäärämaskilla
Muotoilee päivämäärä- tai aikarvoa käyttäen mallimerkkejä: %Mz (kuukausi), %Dz (päivä), %Yz (vuosi) ja muut. Katso päivämäärämaskin säännöt kaikista saatavilla olevista tokeneista.
table.addColumn("released", MusicRecord::getReleaseDate)
.setRenderer(new MaskedDateTimeRenderer<>("%Mz/%Dz/%Yz"));
Linkit ja media
EmailRenderer - sähköpostiosoite klikkautuvana mailto-linkkinä
Suojaa solun arvon mailto:-linkkiä. Oletuksena on ensisijaisesti teemoitettu sähköposti-ikoni visuaalisena vihjeenä.
// Oletussähköposti-ikoni
table.addColumn("email", Contact::getEmail)
.setRenderer(new EmailRenderer<>());
// Mukautettu ikoni
table.addColumn("email", Contact::getEmail)
.setRenderer(new EmailRenderer<>(TablerIcon.create("at")));
PhoneRenderer - puhelinnumero klikkautuvana tel-linkkinä
Suojaa solun arvon tel:-linkkiä. Mobiililaitteissa napautus avaa valintaikkunan. Oletuksena on ensisijaisesti teemoitu puhelin-ikoni.
// Oletuspuhelin-ikoni
table.addColumn("phone", Contact::getPhone)
.setRenderer(new PhoneRenderer<>());
// Mukautettu ikoni
table.addColumn("phone", Contact::getPhone)
.setRenderer(new PhoneRenderer<>(TablerIcon.create("device-mobile")));
AnchorRenderer - solun arvo konfiguroitavana hyperlinkkinä
Renderoi klikkautuva ankkurielementti. href tukee lodash-mallin lausekkeita, joten voit luoda URL-osoitteita dynaamisesti solun arvosta.
AnchorRenderer renderer = new AnchorRenderer<>();
renderer.setHref("https://www.google.com/search?q=<%= cell.value %>");
renderer.setTarget("_blank");
table.addColumn("title", MusicRecord::getTitle).setRenderer(renderer);
ImageRenderer - sisäinen kuva solussa
Näyttää kuvan. src-attribuutti tukee lodash-mallilausekkeita, joten jokainen rivi voi näyttää erilaisen kuvan.
ImageRenderer renderer = new ImageRenderer<>();
renderer.setSrc("https://placehold.co/40x40?text=<%= cell.value %>");
renderer.setAlt("Cover");
table.addColumn("cover", MusicRecord::getArtist).setRenderer(renderer);
Ihmiset ja avatarit
AvatarRenderer - avatar automaattisesti luoduilla alkuperäiskirjaimilla
Renderoi avatar-komponentti. Alkuperäiskirjaimet johdetaan automaattisesti solun arvosta. Tukee teemoja ja varakohtaa.
AvatarRenderer renderer = new AvatarRenderer<>();
renderer.setTheme(AvatarTheme.PRIMARY);
renderer.setIcon(TablerIcon.create("user"));
table.addColumn("artist", MusicRecord::getArtist).setRenderer(renderer);
Kuvakkeet ja toiminnot
IconRenderer - itsenäinen kuvake, valinnaisesti klikattavissa
Renderoi yksittäinen kuvake. Liitä klikkakuuntelija vuorovaikutteiseen käyttäytymiseen.
IconRenderer renderer = new IconRenderer<>(TablerIcon.create("music"));
table.addColumn("type", MusicRecord::getMusicType).setRenderer(renderer);
IconButtonRenderer - toiminnallinen kuvakepainike rivitietoilla
Renderoi klikattava kuvakepainike. Klikkaustapahtuma paljastaa rivin objektin e.getItem(), mikä tekee siitä ihanteellisen rivikohtaisille toimille.
IconButtonRenderer renderer = new IconButtonRenderer<>(TablerIcon.create("edit"));
renderer.addClickListener(e -> openEditor(e.getItem()));
table.addColumn("actions", r -> "").setRenderer(renderer);
ButtonRenderer - teemoitettu painike solussa
Renderoi täysi Button-komponentti solun sisällä.
ButtonRenderer renderer = new ButtonRenderer<>("Edit");
renderer.setTheme(ButtonTheme.PRIMARY);
renderer.addClickListener(e -> openEditor(e.getItem()));
table.addColumn("edit", r -> "Edit").setRenderer(renderer);
ElementRenderer - raaka HTML-elementti lodash-sisällöllä
Renderoi mikä tahansa HTML-elementti lodash-mallin sisältömerkkijonolla. Tämä on vaihtoehto tilanteissa, joissa mikään valmiista renderoijista ei sovi.
ElementRenderer renderer = new ElementRenderer<>("span", "<%= cell.value %>");
table.addColumn("custom", MusicRecord::getTitle).setRenderer(renderer);
Malliviite
Renderoijat tarjoavat tehokkaan mekanismin räätälöidä dataa, joka esitetään Taulukossa. Pääluokka Renderer on suunniteltu laajennettavaksi, jotta voidaan luoda mukautettu renderoija perustuen lodash-malleihin, mahdollistamalla dynaamisen ja vuorovaikutteisen sisällön renderoinnin.
Lodash-mallit mahdollistavat HTML:n suoran lisäämisen taulukon soluihin, mikä tekee niistä erittäin tehokkaita monimutkaisten solutietojen renderoimiseen Taulukossa. Tämä lähestymistapa sallii HTML:n dynaamisen luomisen solutietojen perusteella, helpottaen rikkaita ja vuorovaikutteisia taulukon solunsisältöjä.
Lodash-syntaksi
Seuraavassa osassa hahmotellaan Lodash-syntaksin perusteita. Vaikka tämä ei ole kattava tai yksityiskohtainen yleiskatsaus, sitä voidaan käyttää auttamaan Lodashin käytössä Taulukko-komponentissa.
Syntaksin yleiskatsaus lodash-malleille:
<%= ... %>- Interpoloi arvot, lisäten JavaScript-koodin tuloksen malliin.<% ... %>- Suorittaa JavaScript-koodin, salliaksesi silmukoita, ehtoja jne.<%- ... %>- Pakenee HTML-sisältöä, varmistaen, että interpoloidut tiedot ovat turvallisia HTML-injektiohyökkäyksiltä.
Esimerkit solutiedon käytöstä:
1. Yksinkertainen arvon interpolointi: näytä suoraan solun arvo.
<%= cell.value %>
2. Ehdollinen renderointi: käytä JavaScript-logiikkaa ehdolliseen sisällön renderointeeseen.
<% if (cell.value > 100) { %> 'High' <% } else { %> 'Normal' <% } %>
3. Tietokenttien yhdistäminen: renderoi sisältöä käyttämällä useita tietokenttiä solusta.
<%= cell.row.getValue('firstName') + ' ' + cell.row.getValue('lastName') %>
4. HTML-sisällön pakottaminen: renderoi turvallisesti käyttäjän luomaa sisältöä.
Renderoijalla on pääsy yksityiskohtaisiin soluihin, riveihin ja sarakeominaisuuksiin asiakaspinnan puolella:
TableCell Ominaisuudet:
| Ominaisuus | Tyyppi | Kuvaus |
|---|---|---|
| column | TableColumn | Liittyvä sarakeobjekti. |
| first | boolean | Ilmaisee, onko solu ensimmäinen rivissä. |
| id | String | Solu ID. |
| index | int | Solun indeksi sen rivissä. |
| last | boolean | Ilmaisee, onko solu viimeinen rivissä. |
| row | TableRow | Liittyvä riviobjekti solulle. |
| value | Object | Solun raaka arvo, suoraan tietolähteestä. |
TableRow Ominaisuudet:
| Ominaisuus | Tyyppi | Kuvaus |
|---|---|---|
| cells | TableCell[] | Rivissä olevat solut. |
| data | Object | Sovelluksen tarjoama data riville. |
| even | boolean | Ilmaisee, onko rivi parillinen (tyylitarkoituksiin). |
| first | boolean | Ilmaisee, onko rivi ensimmäinen taulukossa. |
| id | String | Rivin uniikki ID. |
| index | int | Rivin indeksi. |
| last | boolean | Ilmaisee, onko rivi viimeinen taulukossa. |
| odd | boolean | Ilmaisee, onko rivi pariton (tyylitarkoituksiin). |
TableColumn Ominaisuudet:
| Ominaisuus | Tyyppi | Kuvaus |
|---|---|---|
| align | ColumnAlignment | Sarakkeen tasapaino (vasen, keski, oikea). |
| id | String | Rivin objektista saatavan solun datan kenttä. |
| label | String | Nimi, joka renderoidaan sarakkeen otsikossa. |
| pinned | ColumnPinDirection | Sarakkeen kiinnityssuunta (vasen, oikea, automaattinen). |
| sortable | boolean | Jos true, sarake voidaan lajitella. |
| sort | SortDirection | Sarakkeen lajittelujärjestys. |
| type | ColumnType | Sarakkeen tyyppi (teksti, numero, boolean jne.). |
| minWidth | number | Sarakkeen vähimmäisleveys pikseleinä. |