0 Pytanie: Nie wiesz, kiedy używać dyrektywy @client i różnych sposobów uzyskiwania dostępu do pamięci podręcznej Apollo

pytanie utworzone w Sat, Mar 16, 2019 12:00 AM

Stworzyłem serwer apollo i teraz pracuję na frontowej stronie rzeczy. Mój obecny stos to Nuxtjs /Nuxt-apollo /Apollo-server i wybieram użycie pamięci podręcznej Apollo do zarządzania stanem lokalnym zamiast vuex.

Udało mi się połączyć z serwerem apollo, który stworzyłem, uruchomiłem zapytania i mutacje na serwerze i pamięci podręcznej. Jednak jestem bardzo zdezorientowany, kiedy powinienem używać dyrektywy @client . Myślę, że to raczej przypadek, że nie jestem w stanie zobaczyć większego obrazu, więc przełamię mój proces myślenia.

1) Wykonujesz zapytanie /mutację, która zostaje umieszczona w pamięci podręcznej przeglądarki.

2) Możesz teraz uzyskać dostęp do zapytania /mutacji z pamięci podręcznej i uruchomić je bez konieczności wykonywania połączenia z serwerem za pomocą client.readQuery i writeQuery. (Prawdopodobnie nie rozumiem tego poprawnie, ponieważ czytam oficjalne dokumenty.)

3) Dyrektywa @client służy do zarządzania stanem i umieszczasz go obok dowolnego pola, które chcesz buforować. Dotyczy to również tylko pamięci podręcznej i lokalnych programów do rozwiązywania problemów. Czy są one niestandardowe? Ale z mojego doświadczenia wynika, że ​​nadpisuje ROOT_QUERY, ROOT_MUTATION wewnątrz pamięci podręcznej? Wydaje się to trochę sprzeczne z intuicją?

Aby moje pytanie było bardziej szczegółowe i mniej niejasne, , gdy powinienem używać readQuery /writeQuery /readFragment /writeFragment i dyrektywy @client. Jeśli to możliwe, tak jak laikowany, jak to możliwe?

    
1
0 Answers                              0                         
źródło umieszczone tutaj