.

.

środa, 22 marca 2017

Schadzka z Ajaxem (albo make life harder)

Przymiarki do ajaxa. Dzieje się! ;)

Zaczynam od - ba! - pobrania z API danych jednej książki i wyświetlenia ich. Cel jasny i prosty, ale droga okazała się kręta.

Wiedziona jakimś podświadomym pragnieniem "make life harder", zamiast prostego url do API, czyli: http://localhost:3000/books/2, użyłam takiego: http://localhost:3000/books?id=2. Różnica niewielka, ale zasadnicza, bo pierwszyrequest zwraca obiekt, drugi zaś listę. A funkcja wywołująca szablon Handlebars jako parametr przyjmuje obiekt, więc trzeba było zwróconą listę przemapować na obiekt.

Idea "make life harder" (a jednocześnie: "make code longer" ;)) jakoś nie chciała mnie opuścić, więc owo przemapowanie zrobiłam tak:


Potem dostałam z zewnątrz, jakże słuszną, sugestię, że można to zrobić prościej, krócej, mianowicie tak:


Ergo: tę samą funkcjonalność zapisać można na wiele sposobów. Rzecz w tym, by wybrać sposób optymalny. Programowanie więc, jak życie, jest sztuką wyboru. ;)

A w wyżej wspomnianej sytuacji najprostszym rozwiązaniem było to:



Tak, wiem... Póki co obchodzę się z tym ajaxem dość prymitywnie. Tak to bywa na początku znajomości, trochę niepewnie, trochę niezręcznie. Ale i ekscytująco. ;) Pierwsze lody przełamane, zaiskrzyło... Wszystko wskazuje na to, że niebawem nastąpi wydzielenie warstwy modelu. Kibicuję temu związkowi! ;)


Brak komentarzy:

Prześlij komentarz