Исходя из jQuery
Я знаю, что могу использовать jQuery.active
для проверки количества активных jQuery AJAX соединений; Я должен постоянно опрашивать эту переменную, чтобы событие сработало при появлении новой связи. Я также могу использовать jQuery.ajaxStart()
и jQuery.ajaxStop()
события.
Я создаю SPA с GraphQL и Apollo (https://github.com/apollographql).
Apollo Link ( https://github.com/apollographql/apollo-link) - это уровень, который эффективно запускает запросы GET / POST.
Есть ли способ проверить, что запросы ожидают?
Здесь пользователь попробовал это: https://github.com/apollographql/apollo-link-state/issues/236 с использованием этого кода:
const queryInProcessNotifier = new ApolloLink((operation, forward) => {
client.mutate({mutation:M_CHANGE_APP_SETTING, variables: { setting:"appIsLoading", state:true }})
return forward(operation).map((data) => {
client.mutate({mutation:M_CHANGE_APP_SETTING, variables: { setting:"appIsLoading", state:false }})
return data
})
})
Это работает, потому что каждый запрос проходит через него, но если он будет прерван по какой-либо причине, мой статус больше не изменится на false
.
Также у меня есть много параллельных запросов для проверки, так что я могу создать «счетчик» +1 / -1 для каждого запроса, но все же проблема с прерванными.
Что Вы думаете о
1031 * Есть ли способ без библиотек вообще?
Есть ли fetch
API или событие для подписки?