Gatsby: Suspense and React.lazy funktioniert nicht

Erstellt am 21. Feb. 2019  ·  1Kommentar  ·  Quelle: gatsbyjs/gatsby

capture d ecran 2019-02-21 a 10 57 39

Beschreibung

Ich habe nur dann einen Fehler bei yarn build , wenn ich <Suspense>
Auf yarn develop ich keine Fehler.

Beachten Sie, dass ich nicht React.lazy() oder Loadable components .

import React, { Suspense } from 'react';

const Dashboard = props => {
  return (
      <Suspense fallback={<>Hey</>}>
        Hello
      </Suspense>
  );
};

export default Dashboard;

Schritte zum Reproduzieren

yarn build

Erwartetes Ergebnis

Build sollte Erfolg haben.

Tatsächliche Ergebnis

Build schlägt fehl.

Umfeld

System:
Betriebssystem: macOS 10.14.2
CPU: (8) x64 Intel(R) Core(TM) i5-8259U CPU @ 2,30GHz
Shell: 3.2.57 - /bin/bash
Binärdateien:
Knoten: 11.9.0 - /usr/local/bin/node
Garn: 1.13.0 - /usr/local/bin/garn
npm: 6.5.0 - /usr/local/bin/npm
Sprachen:
Python: 2.7.10 - /usr/bin/python
Browser:
Chrom: 72.0.3626.109
Firefox: 65.0.1
Safari: 12.0.2
npmPakete:
gatsby: ^2.0.0 => 2.0.118
gatsby-cli: ^2.4.6 => 2.4.9
gatsby-image: ^2.0.26 => 2.0.29
gatsby-plugin-emotion: ^4.0.1 => 4.0.3
gatsby-plugin-react-helm: ^3.0.0 => 3.0.6
gatsby-plugin-sharp: ^2.0.17 => 2.0.20
gatsby-source-filesystem: ^2.0.12 => 2.0.20
gatsby-transformator-scharf: ^2.1.10 => 2.1.13
npmGlobalPackages:
gatsby-cli: 2.4.8

Hilfreichster Kommentar

Vielen Dank für das Öffnen dieses Themas! Wie gesagt, ist dies etwas tangential zu Gatsby.

Gatsby verwendet SSR, das von Suspense & React.Lazy noch nicht unterstützt wird. Sie können zu einer vollständigen Client-Site wechseln, um diese Funktionen zu nutzen, aber die statische Generierung von Seiten zu haben, die Sie leider nicht können. Reagieren Sie empfiehlt, das Loadable-Komponentenpaket zu verwenden, bis SSR behoben ist .

Ursprüngliche Empfehlung des React-Teams:
https://reactjs.org/docs/code-splitting.html#reactlazy

React.lazy und Suspense sind noch nicht für serverseitiges Rendering verfügbar. Wenn Sie Code-Splitting in einer vom Server gerenderten App durchführen möchten, empfehlen wir Loadable Components . Es hat eine schöne Anleitung zum Aufteilen von Bundles mit serverseitigem Rendering .

Wenn wir Ihnen weiterhelfen können, zögern Sie bitte nicht, uns zu kontaktieren oder dieses Problem zu kommentieren, und wir würden uns gerne noch einmal umsehen.

Danke, dass du Gatsby benutzt hast 💪

>Alle Kommentare

Vielen Dank für das Öffnen dieses Themas! Wie gesagt, ist dies etwas tangential zu Gatsby.

Gatsby verwendet SSR, das von Suspense & React.Lazy noch nicht unterstützt wird. Sie können zu einer vollständigen Client-Site wechseln, um diese Funktionen zu nutzen, aber die statische Generierung von Seiten zu haben, die Sie leider nicht können. Reagieren Sie empfiehlt, das Loadable-Komponentenpaket zu verwenden, bis SSR behoben ist .

Ursprüngliche Empfehlung des React-Teams:
https://reactjs.org/docs/code-splitting.html#reactlazy

React.lazy und Suspense sind noch nicht für serverseitiges Rendering verfügbar. Wenn Sie Code-Splitting in einer vom Server gerenderten App durchführen möchten, empfehlen wir Loadable Components . Es hat eine schöne Anleitung zum Aufteilen von Bundles mit serverseitigem Rendering .

Wenn wir Ihnen weiterhelfen können, zögern Sie bitte nicht, uns zu kontaktieren oder dieses Problem zu kommentieren, und wir würden uns gerne noch einmal umsehen.

Danke, dass du Gatsby benutzt hast 💪

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

signalwerk picture signalwerk  ·  3Kommentare

benstr picture benstr  ·  3Kommentare

ferMartz picture ferMartz  ·  3Kommentare

kalinchernev picture kalinchernev  ·  3Kommentare

brandonmp picture brandonmp  ·  3Kommentare