2016-09-01 45 views
8

Mam aplikację React za pomocą przekaźnika i zdalnego serwera GraphQL. Kiedy uruchamiam serwer Webpack, mam go pobrać najnowszy schemat i podać go do wtyczki babel-relay-plugin.Pamięć podręczna/bufor bazy danych GraphQL nie aktualizuje się po aktualizacji schematu po stronie serwera

Działa świetnie ... z wyjątkiem sytuacji, gdy zmieniam schemat. Wygląda na to, że React lub Relay lub webpack lub coś buforuje schemat, ponieważ podczas uruchamiania aplikacji pojawi się błąd sprawdzania poprawności schematu w konsoli przeglądarki. Jednak po uruchomieniu kwerendy ręcznie na serwerze GraphQL za pomocą GraphIQL, kwerenda się powiedzie. Musiałby to być jakaś skrzynka po stronie reagowania, przekaźnika, strony sieciowej, myślę?

Czego próbowałem:

  1. przedmiot
  2. Ponowne uruchomienie serwera WebPack
  3. Usuwanie node_modules i npm install
  4. Mam nawet próbował ponownym uruchomieniu komputera (który faktycznie wydawało się do pracy, ale może być zbieg okoliczności)

Z góry dziękuję za pomoc.

+0

Zaobserwowałem ten sam problem i muszę jeszcze znaleźć rozwiązanie. –

+0

Czy próbowałeś zmienić coś w pliku js, aby wymusić rekompilację, być może nie wykryje zmiany w js, więc nie rekompiluje. To działało przy różnych okazjach. Podejrzewam, że webpack może również buforować rzeczy i razem z 'HotModuleReplacment' może być więcej problemów. Nie jestem tego pewien. –

+0

Tak, próbowałem tego. : -/Wydaje się, że nic nie robi. – postalservice14

Odpowiedz

5

Okazuje się, że był to błąd człowieka. Posiadałem cacheDirectory jako true w moim kwerendie babel-loader. Możesz przeczytać o tym na readme programu Babel-loader (po prostu znajdź na stronie "cacheDirectory") https://github.com/babel/babel-loader

Raz zmieniłem to na false, co jest domyślne. Problem zniknął. Mam nadzieję, że pomaga innym.

3

To zdarzyło się do mnie, kiedy przeszedłem do Webpack 2.

Rozwiązaniem w moim przypadku było przesunąć babelRelayPlugin być pierwszy plugin do wykonania w .babelrc.

Nie jestem do końca pewien, dlaczego.

+1

Mam go na pierwszym miejscu. Jednak wciąż obserwuję ten sam problem. –

+0

Spróbuję, gdy następnym razem to się stanie i zdam raport ... – postalservice14