Направих някои актуализации, за да направя компонентите на реакцията още „по-глупави“, като добавих нови полета към GraphQL, за да му позволя да върши повече работа, а компонентите да вършат по-малко. Първоначално някои данни щяха да идват като масив от обекти и аз извиках метода map няколко пъти, за да получа данните в отделни масиви за всеки компонент на диаграмата. Така че накарах GraphQL да ми върне данните, които искам в масив от стойности. Сега контейнерният компонент просто предава данни на обикновения компонент и върши най-малко работа, за да изведе изгледа. Така че още едно повишаване на производителността. GraphQL е твърде страхотен.
Ето я новата заявка. Забележете колко е декларативно.
query: ` { weatherForecast(city:”${term}”) { city { id, name, coord{ lat, lng: lon } }, pressure_data, humidity_data, temp_f_data, pressure_avg, humidity_avg, temp_f_avg, } }