reactjs / reactjs/react.dev

[Suggestion]: Document using Promises passed from RSC to the client without `use()`

Offen
#7,810 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

type: documentation
Vorherrschende Sprache
JavaScript
Sterne
11.8k
Forks
7.9k
Ø Merge
1 T. 11 Std.
Gemergte PRs (30 T.)
11

Beschreibung

Summary

The docs on RSC should mention whether Promises passed from Server Components can be used without use().

Page

https://react.dev/reference/rsc/server-components

Details

Currently, the docs only discuss resolving Promises passed from the server using use(). Sometimes it can be useful to render a component with partial data and update its state once the promise is fulfilled. This appears to work.:

"use client";

export default function Component({ promise }) {
  const [data, setData] = useState(null);
  useEffect(() => {
    let canceled = false;
    promise.then((d) => !canceled && setData(d));

    return () => canceled = true;
  }, [promise])

  return (<p>{data}</p>);
}

However I can't find any mentions of this use case. I think that if this is officially supported, there should be an example showing how to do it. And if not, that should be explicitly stated.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der Seite zu Server Components unter https://react.dev/reference/rsc/server-components und überprüfe ihre aktuelle Erörterung von Promises, die an Client Components übergeben werden. Stelle fest, ob der gezeigte Anwendungsfall offiziell unterstützt wird, und dokumentiere ihn mit einem Beispiel oder erkläre ausdrücklich, dass er nicht unterstützt wird. Als abgeschlossen gilt die Aufgabe, wenn die Seite diesen Anwendungsfall klar behandelt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
javascript, react
Bereich
documentation
Issue-Typ
Dokumentation
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.