defineView() per distribuire viste preconfigurate con la tua app — in genere una vista indice predefinita per ogni oggetto personalizzato che crei.
src/views/example-view.ts
Punti chiave
objectUniversalIdentifierspecifica a quale oggetto si applica questa vista. Può essere un oggetto personalizzato che hai definito o un oggetto Twenty standard.key: ViewKey.INDEXcontrassegna la vista come vista elenco principale dell’oggetto (quella che un elemento di navigazioneOBJECTapre).fieldscontrolla quali colonne compaiono e in quale ordine. Ogni campo fa riferimento a unfieldMetadataUniversalIdentifier. Per fare riferimento a un campo di sistema creato automaticamente comecreatedAt, vedi Targeting System Fields.- Puoi anche definire
filters,filterGroups,sorts,groupsefieldGroupsper configurazioni più avanzate. positioncontrolla l’ordinamento quando esistono più viste per lo stesso oggetto.
Proprietà opzionali
Tutti gli enum sopra sono esportati da
twenty-sdk/define.
Filtri
Una vista può essere fornita con filtri preapplicati. Ogni filtro ha tre coordinate: il campo che viene filtrato, l’operando (come confrontare) e il valore (con cosa confrontare). Tutti e tre devono allinearsi: l’uso di un operando che non si applica a un tipo di campo verrà rifiutato al momento della sincronizzazione.Operatori supportati per tipo di campo
I tipi di campo con nomi simili possono usare operandi completamente diversi —SELECTeMULTI_SELECTsono un caso comune.
Forma del valore per operando
Il campovalue è sempre un valore serializzabile in JSON, ma la forma prevista dipende dall’operando:
Come le viste vengono visualizzate nell’interfaccia utente
Una vista da sola non è raggiungibile dalla barra laterale. Per farla apparire lì, collegala a una voce del menu di navigazione di tipoVIEW che punti all’universalIdentifier della vista. Questo è il pattern canonico: ogni oggetto personalizzato in genere distribuisce una vista predefinita + una voce nella barra laterale che la apre.