псотоянно меняются, приходят новые, старые уходят, старые выпускают мажорную версию и меняют протокол
- библиотеки делаются для “общего абстрактного кэйса” а у вас всегда частный случай
Я для того, чтобы это обойти, никода напрямую сторонние либы в коде не использую, делаю тонкую обертку вокруг них. Тогда:
- нужно перейти на новую либу/версиб? нужно только поменять в одном месте
- есть шероховатости и либа что-то не умеет делать? можно расширить ее функционал
Ну добавить имитацию error policy в react-query я не придумал как. Она ожидает промис функцию которая или упадёт или резовнется. graphql-request при любой ошибке реджектит. Да можно написать свой фетчер который всегда будет выдавать что то вроде [data, graphqlErrors?]. Но тогда получается стремное апи , useQuery хук возвращает две сущности с ошибками в разных местах которые нужно обрабатывать, и плагин для graphql codegen становится бесполезным, он не знает о таком ничего, нужно ещё и его переписывать. В общем проще было вернуть аполло (или urql) в которых из коробки этот функционал есть.
Обсуждают сегодня