Siirry pääsisältöön

Editing and Refreshing

Avaa ChatGPT:ssä

Tietojen muokkaaminen Table-komponentissa tapahtuu vuorovaikutuksessa Repository:n kanssa, joka sisältää taulukon tiedot. Repository toimii sillan tavoin Table-komponentin ja taustatietojoukon välillä, tarjoten menetelmiä tietojen hakemiseen, muokkaamiseen ja päivittämiseen. Alla on esimerkki, joka toteuttaa käyttäytymisen muokataksesi halutun rivin "Otsikkoa".

Näytä koodi

Yllä olevassa esimerkissä TitleEditorComponent-luokka helpottaa "Otsikko"-kentän muokkaamista valitulle MusicRecord:ille. Komponentti sisältää syötekentän uudelle otsikolle sekä "Tallenna" ja "Peruuta" -painikkeet.

Yhdistääksemme muokkauskomponentin Table:n kanssa, "Muokkaa" -painike lisätään Table:hin käyttämällä VoidElementRenderer:ia. Tämän painikkeen napsauttaminen laukaisee edit()-metodin TitleEditorComponent:issa, mikä mahdollistaa käyttäjien muokata "Otsikko" -arvoa.

Commit method

Kun käyttäjä muokkaa otsikkoa ja napsauttaa "Tallenna"-painiketta, TitleEditorComponent laukaisee save()-metodin. Tämä metodi päivittää vastaavan MusicRecord:in otsikon ja lähettää mukautetun SaveEvent:in.

Reaaliaikainen päivitys tietovarastossa saavutetaan commit()-metodin kautta. Tätä metodia käytetään onSave-tapahtuman kuuntelijassa, varmistaen, että muokkauskomponentissa tehdyt muutokset heijastuvat taustatietojoukkoon.

commit()-metodia kutsutaan ilmoittamaan kaikille kiinnostuneille komponenteille, että tiedot on muutettu. Table-komponentti vastaanottaa RepositoryCommitEvent:in ja päivittää perustuen uusiin tietoihin.

Tietojen päivittäminen ja luominen

commit()-metodin kutsuminen päivittää olemassa olevia tietueita ja lisää kaikki uudet tietueet, jotka on luotu.