Wpis z mikrobloga

#programista15k #programowanie #javascript

Mireczki, szukam czegoś do modeli w rest api. Chodzi o to, że back-end wysyła nam różne obiekty z encji devices. Posiadają one części wspólne (np. id, type), ale posiadają unikalne (np. color), które nie występują w przypadku innych type.

Przykład.

[
{
id: 1,
color: 'red',
type: 'Type-1'
}, {
id: 2,
width: 120,
type: 'Type-2'
}
]

Oczywiście tak naprawdę temat jest o wiele bardziej skomplikowany. Jednakże, główny problem, że nie chcemy trzymać typowania i modeli tych danych w kodzie appki. Chcemy, żeby backend nam dosyłał patent na sprawdzanie tego co tam jest. Są do tego jakieś gotowe idee? Czy musimy szyć od nowa?
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@janekbrzechwa: możesz przepuścić przez object.keys(), wrzucić jakiegoś fuzzy matcha i sobie powydzielać co potrzebujesz.
Pierwszym pytaniem jest po co to potrzebne - żeby wyświetlić, żeby przekazać wartość w styl? Bo od tego to zależy.

Bo w sumie backend i tak wam wysyła co tam jest przecież XD
  • Odpowiedz
@przegrywek123 to nie takie oczywiste. bo istnieją przypadki w których ja nie chce wiedzieć jakie są tam dane (obiekty są duże) i nie chce ich mapować, ale chce wiedzieć do jakiego komponentu je wpuścić. Wówczas bez modelu nie będę wiedział do jakiego komponentu wpuścić właściwość width - przykładowo. :)
  • Odpowiedz
Chcemy, żeby backend nam dosyłał patent na sprawdzanie tego co tam jest


@janekbrzechwa: W takim wypadku to są jakieś bzdury
Newtonsoft.Json możesz ustawić żeby ci wysyłał typ w osobnym fieldzie. Ale użyteczność tego po kliencie znikoma.
  • Odpowiedz
@budyn nie wiem co w tym bzdurnego. Bardzo dobry przykład przesłał @marmite. Typowanie i TypeScript wewnątrz aplikacji to całkowicie osobny temat na dyskusję i nie ma on zastosowania w moim przykładzie.

Jeśli otrzymuje item-object, który posiada 100 właściwości (props) to nonsensem byłoby pisanie instrukcji warunkowych w kodzie co która właściwość ma renderować. W szczególności, że można do tego opracowac schematy, o których tutaj mowa.

Bardzo dobrym przykładem jest, że
  • Odpowiedz