-
En relativt bastant påstand, men etter å ha tukla rundt med export interface ExpandableTableRowControllerProps extends TableCellProps {
/** Settes automatisk av ExpandableTableRow */
isOpen?: boolean;
onClick?: () => void;
} Her er APIet forvirrende når jeg skal bruke komponenten ettersom VSCode sier at her er det props jeg kan bruke, og selv om kommentaren også blir med er det lett å overse denne. Dette er et mønster vi bruker på flere komponenter i Jøkul. Spesielt er dette komponenter med mer kompleks funksjonalitet hvor det finnes en mor-komponent som styrer et child. Som et alternativ til dette mønsteret burde vi heller holde sånne verdier med Context. Selv om dette kompliserer koden noe, isolerer vi props som ikke skal eksponeres og unngår forvirring i bruken av props. Snurr debatt! |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 1 reply
-
Enig i at det er en litt "uting", og at context bør være hovedregelen 👍 Har syndet her selv, spesielt når det er en direkte parent->child, men det kan skape forvirring som du sier. |
Beta Was this translation helpful? Give feedback.
-
Enig! Hvis komponenten kun fungerer i kontekst av info fra en annen komponent er det neppe feil å putte det i en |
Beta Was this translation helpful? Give feedback.
-
Er det slik at dette er typer som synes og brukes av konsumenter av komponentene? I så fall er jeg enig at det er fint å unngå å eksponere typer som ikke egentlig er meningen å bruke. |
Beta Was this translation helpful? Give feedback.
-
Da tenker jeg det er generell enighet om at vi gjør dette og lukker diskusjonen 👍 |
Beta Was this translation helpful? Give feedback.
Da tenker jeg det er generell enighet om at vi gjør dette og lukker diskusjonen 👍