{"id":54958,"date":"2024-08-28T07:00:00","date_gmt":"2024-08-28T14:00:00","guid":{"rendered":"https:\/\/dhblog.dream.press\/blog\/?p=54958"},"modified":"2025-01-07T06:06:19","modified_gmt":"2025-01-07T14:06:19","slug":"react-server-komponenten","status":"publish","type":"post","link":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/","title":{"rendered":"React Serverkomponenten: Die Zukunft der React-Entwicklung"},"content":{"rendered":"<p>React ist seit den letzten <a href=\"https:\/\/vercel.com\/blog\/10-years-of-react\" target=\"_blank\" rel=\"noreferrer noopener\">zehn Jahren<\/a> eine treibende Kraft beim Erstellen von Web-Apps.<\/p>\n<p>Wir haben alle gesehen, wie es sich von diesen klobigen Klassenkomponenten zur Eleganz der Hooks entwickelt hat.<\/p>\n<p>Aber React Server Components (RSCs)?<\/p>\n<p>Wir denken nicht, dass jemand mit einer so dramatischen Ver\u00e4nderung in der Funktionsweise von React gerechnet hat.<\/p>\n<p>Was sind also React Server-Komponenten? Wie funktionieren sie? Und was machen sie anders, das React nicht bereits konnte?<\/p>\n<p>Um all diese Fragen zu beantworten, werden wir schnell die Grundlagen durchgehen. Wenn Sie eine Auffrischung ben\u00f6tigen, werfen Sie einen schnellen Blick auf diesen <a href=\"https:\/\/www.dreamhost.com\/blog\/de\/react-lernen\/\" target=\"_blank\" rel=\"noreferrer noopener\">Leitfaden, wie man als Anf\u00e4nger React lernt<\/a>.<\/p>\n<p>In diesem Beitrag erkl\u00e4ren wir Ihnen, warum wir React Server Components ben\u00f6tigt haben, wie sie funktionieren und einige der wichtigsten Vorteile von RSCs.<\/p>\n<p>Lassen Sie uns beginnen!<\/p>\n<h2 id=\"h-what-are-react-server-components\" class=\"wp-block-heading\">Was sind React Server-Komponenten?<\/h2>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"2400\" height=\"1800\" data-src=\"https:\/\/www.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree.webp\" alt=\"Baumdiagramm der React Server Komponenten zeigt die Hierarchie und wo verschiedene Komponententypen in der App gerendert werden.\" class=\"wp-image-48948 lazyload\" data-srcset=\"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree.webp 2400w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-300x225.webp 300w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-1024x768.webp 1024w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-768x576.webp 768w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-1536x1152.webp 1536w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-2048x1536.webp 2048w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-600x450.webp 600w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-1200x900.webp 1200w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-730x548.webp 730w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-1460x1095.webp 1460w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-784x588.webp 784w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-1568x1176.webp 1568w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-877x658.webp 877w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/01_react_server_components_tree-1754x1316.webp 1754w\" data-sizes=\"(max-width: 2400px) 100vw, 2400px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 2400px; --smush-placeholder-aspect-ratio: 2400\/1800;\" \/><\/figure>\n<p>Betrachten Sie React Server Components als eine neue Art, React-Anwendungen zu erstellen. Anstatt im Browser wie typische React-Komponenten zu laufen, werden RSCs direkt auf Ihrem Server ausgef\u00fchrt.<\/p>\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\u201eIch denke, RSCs sind dazu gedacht, die \u201eKomponentisierung\u201c des Backends zu sein, also das \u00c4quivalent zum Backend von dem, was <a href=\"https:\/\/single-spa.js.org\/docs\/ecosystem-react\/\" target=\"_blank\" rel=\"noreferrer noopener\">SPA React<\/a> f\u00fcr das Frontend getan hat. Theoretisch k\u00f6nnten sie weitgehend die Notwendigkeit f\u00fcr Dinge wie REST und GraphQL eliminieren, was zu einer viel engeren Integration zwischen Server und Client f\u00fchren w\u00fcrde, da eine Komponente den gesamten Stack durchlaufen k\u00f6nnte.\u201c \u2014 <a href=\"https:\/\/www.reddit.com\/r\/reactjs\/comments\/1c9yuwj\/comment\/l0ov9jw\/?utm_source=share&amp;utm_medium=web3x&amp;utm_name=web3xcss&amp;utm_term=1&amp;utm_content=share_button\" target=\"_blank\" rel=\"noreferrer noopener\">ExternalBison54 auf Reddit<\/a><\/p><\/blockquote>\n<p>Da RSCs direkt auf dem Server ausgef\u00fchrt werden, k\u00f6nnen sie effizient auf Backend-Ressourcen wie Datenbanken und <a href=\"https:\/\/help.dreamhost.com\/hc\/en-us\/articles\/217560167-Application-programming-interface-overview\" target=\"_blank\" rel=\"noreferrer noopener\">APIs<\/a> ohne eine zus\u00e4tzliche Datenerfassungsschicht zugreifen.<\/p>\n\n\n\n<div class=\"glossary-term\">\n\t<a\n\t\tclass=\"glossary-term__above-title\"\n\t\thref=\"\"\n\t\ttarget=\"_blank\"\n\t\trel=\"noopener noreferrer\"\n\t>\n\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 640 512\"><path d=\"M320 32c-8.1 0-16.1 1.4-23.7 4.1L15.8 137.4C6.3 140.9 0 149.9 0 160s6.3 19.1 15.8 22.6l57.9 20.9C57.3 229.3 48 259.8 48 291.9v28.1c0 28.4-10.8 57.7-22.3 80.8c-6.5 13-13.9 25.8-22.5 37.6C0 442.7-.9 448.3 .9 453.4s6 8.9 11.2 10.2l64 16c4.2 1.1 8.7 .3 12.4-2s6.3-6.1 7.1-10.4c8.6-42.8 4.3-81.2-2.1-108.7C90.3 344.3 86 329.8 80 316.5V291.9c0-30.2 10.2-58.7 27.9-81.5c12.9-15.5 29.6-28 49.2-35.7l157-61.7c8.2-3.2 17.5 .8 20.7 9s-.8 17.5-9 20.7l-157 61.7c-12.4 4.9-23.3 12.4-32.2 21.6l159.6 57.6c7.6 2.7 15.6 4.1 23.7 4.1s16.1-1.4 23.7-4.1L624.2 182.6c9.5-3.4 15.8-12.5 15.8-22.6s-6.3-19.1-15.8-22.6L343.7 36.1C336.1 33.4 328.1 32 320 32zM128 408c0 35.3 86 72 192 72s192-36.7 192-72L496.7 262.6 354.5 314c-11.1 4-22.8 6-34.5 6s-23.5-2-34.5-6L143.3 262.6 128 408z\"\/><\/svg>\n\t\t<span><\/span>\n\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 384 512\"><path d=\"M342.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L274.7 256 105.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z\"\/><\/svg>\n\t<\/a>\n    <h3>API<\/h3>\n    <p>Eine Anwendungsschnittstelle (API) ist eine Reihe von Funktionen, die es Anwendungen erm\u00f6glichen, auf Daten zuzugreifen und mit externen Komponenten zu interagieren, und dient als Bote zwischen Client und Server.<\/p>\n            <a\n            href=\"https:\/\/www.dreamhost.com\/glossary\/web-design\/api\/\"\n                        class=\"btn btn--white-outline btn--sm btn--round\"\n                                    target=\"_blank\"\n            rel=\"noopener noreferrer\"\n            >\n                            Mehr erfahren                    <\/a>\n\n<\/div>\n\n<p><strong>Aber warum brauchten wir \u00fcberhaupt RSCs?<\/strong><\/p>\n<p>Um diese Frage zu beantworten, lassen Sie uns ein wenig zur\u00fcckspulen.<\/p>\n<h2 id=\"h2_traditional-react-client-side-rendering-csr\" class=\"wp-block-heading\">Traditionelles React: Clientseitiges Rendering (CSR)<\/h2>\n<p>React war schon immer eine clientseitige UI-Bibliothek.<\/p>\n<p>Die grundlegende Idee hinter React besteht darin, Ihr gesamtes Design in kleinere, unabh\u00e4ngige Einheiten zu unterteilen, die wir Komponenten nennen. Diese Komponenten k\u00f6nnen ihre eigenen privaten Daten (<strong>Zustand<\/strong>) verwalten und Daten aneinander weitergeben (<strong>Eigenschaften<\/strong>).<\/p>\n<p>Betrachten Sie diese Komponenten als <a href=\"https:\/\/www.dreamhost.com\/blog\/de\/javascript-lernen\/\" target=\"_blank\" rel=\"noreferrer noopener\">JavaScript-Funktionen<\/a>, die heruntergeladen und direkt im Browser des Benutzers ausgef\u00fchrt werden. Wenn jemand Ihre App besucht, l\u00e4dt dessen Browser den gesamten Komponentencode herunter, und React tritt in Aktion, um alles zu rendern:<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"2400\" height=\"1800\" data-src=\"https:\/\/www.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_.webp\" alt=\"Flussdiagramm: Ablauf der Client-seitigen Darstellung, von der Benutzeranfrage bis zum Seitenladen, einschlie\u00dflich Serverantwort und Browserverarbeitung.\" class=\"wp-image-48950 lazyload\" data-srcset=\"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_.webp 2400w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-300x225.webp 300w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-1024x768.webp 1024w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-768x576.webp 768w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-1536x1152.webp 1536w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-2048x1536.webp 2048w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-600x450.webp 600w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-1200x900.webp 1200w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-730x548.webp 730w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-1460x1095.webp 1460w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-784x588.webp 784w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-1568x1176.webp 1568w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-877x658.webp 877w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/02_how_client_side_rendering_works_-1754x1316.webp 1754w\" data-sizes=\"(max-width: 2400px) 100vw, 2400px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 2400px; --smush-placeholder-aspect-ratio: 2400\/1800;\" \/><\/figure>\n<ul class=\"wp-block-list\"><li>Der Browser l\u00e4dt das HTML, JavaScript, <a href=\"https:\/\/www.dreamhost.com\/blog\/de\/css-transformation\/\" target=\"_blank\" rel=\"noreferrer noopener\">CSS<\/a> und andere Ressourcen herunter.<\/li><li>React analysiert das <a href=\"https:\/\/www.dreamhost.com\/blog\/de\/html-lernen\/\" target=\"_blank\" rel=\"noreferrer noopener\">HTML<\/a>, richtet Event-Listener f\u00fcr Benutzerinteraktionen ein und ruft alle erforderlichen Daten ab.<\/li><li>Die Website verwandelt sich direkt vor Ihren Augen in eine voll funktionsf\u00e4hige React-Anwendung, und alles wird von Ihrem Browser und Computer erledigt.<\/li><\/ul>\n<p><strong>Obwohl dieser Prozess funktioniert, hat er einige Nachteile:<\/strong><\/p>\n<ul class=\"wp-block-list\"><li><strong>Lange Ladezeiten:<\/strong> Ladezeiten k\u00f6nnen besonders bei komplexen Anwendungen mit vielen Komponenten langsam sein, da der Benutzer jetzt warten muss, bis alles heruntergeladen ist.<\/li><li><strong>Schlecht f\u00fcr <\/strong><a href=\"https:\/\/www.dreamhost.com\/blog\/de\/seo-verbessern\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Suchmaschinenoptimierung (SEO)<\/strong><\/a>: Das anf\u00e4ngliche HTML ist oft nur rudiment\u00e4r \u2013 gerade genug, um das JavaScript herunterzuladen, welches dann den Rest des Codes rendert. Dies erschwert es Suchmaschinen zu verstehen, worum es auf der Seite geht.<\/li><li><strong>Wird langsamer, wenn Apps gr\u00f6\u00dfer werden: <\/strong>Die clientseitige Verarbeitung von JavaScript kann Ressourcen belasten, was zu einer raueren Benutzererfahrung f\u00fchrt, besonders wenn Sie mehr Funktionalit\u00e4ten hinzuf\u00fcgen.<\/li><\/ul>\n\n<div class=\"article-newsletter article-newsletter--gradient\">\n\n\n<h2>Get Content Delivered Straight to Your Inbox<\/h2><p>Subscribe now to receive all the latest updates, delivered directly to your inbox.<\/p><form class=\"nwsl-form\" id=\"newsletter_block_\" novalidate><div class=\"messages\"><\/div><div class=\"form-group\"><label for=\"input_newsletter_block_\"><input type=\"email\"name=\"email\"id=\"input_newsletter_block_\"placeholder=\"Enter your email address\"novalidatedisabled=\"disabled\"\/><\/label><button type=\"submit\"class=\"btn btn--brand\"disabled=\"disabled\"><span>Sign Me Up!<\/span><svg width=\"21\" height=\"14\" viewBox=\"0 0 21 14\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M13.8523 0.42524L12.9323 1.34521C12.7095 1.56801 12.7132 1.9304 12.9404 2.14865L16.7241 5.7823H0.5625C0.251859 5.7823 0 6.03416 0 6.3448V7.6573C0 7.96794 0.251859 8.2198 0.5625 8.2198H16.7241L12.9405 11.8535C12.7132 12.0717 12.7095 12.4341 12.9323 12.6569L13.8523 13.5769C14.072 13.7965 14.4281 13.7965 14.6478 13.5769L20.8259 7.39879C21.0456 7.17913 21.0456 6.82298 20.8259 6.60327L14.6477 0.42524C14.4281 0.205584 14.0719 0.205584 13.8523 0.42524Z\" fill=\"white\"\/>\n<\/svg>\n<\/button><\/div><\/form><\/div>\n<h2 id=\"h2_the-next-iteration-server-side-rendering-ssr\" class=\"wp-block-heading\">Die n\u00e4chste Iteration: Serverseitiges Rendering (SSR)<\/h2>\n<p>Um die Probleme zu adressieren, die durch das clientseitige Rendern verursacht werden, hat die React-Gemeinschaft das Serverseitige Rendern (SSR) \u00fcbernommen.<\/p>\n<p>Mit SSR wird das Rendern des Codes zu HTML vom Server \u00fcbernommen, bevor dieser gesendet wird.<\/p>\n<p>Dieses vollst\u00e4ndige, gerenderte HTML wird dann an Ihren Browser\/Mobilger\u00e4t \u00fcbertragen, bereit zur Ansicht \u2014 die App muss w\u00e4hrend der Laufzeit nicht <em>kompiliert<\/em> werden, wie es ohne SSR der Fall w\u00e4re.<\/p>\n<p><strong>Hier ist, wie SSR funktioniert:<\/strong><\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"2400\" height=\"1800\" data-src=\"https:\/\/www.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_.webp\" alt=\"Diagramm, das zeigt, wie serverseitiges Rendering funktioniert, wobei der Browser HTML vom Server anfordert und eine vollst\u00e4ndig gerenderte Seite erh\u00e4lt.\" class=\"wp-image-48953 lazyload\" data-srcset=\"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_.webp 2400w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-300x225.webp 300w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-1024x768.webp 1024w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-768x576.webp 768w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-1536x1152.webp 1536w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-2048x1536.webp 2048w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-600x450.webp 600w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-1200x900.webp 1200w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-730x548.webp 730w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-1460x1095.webp 1460w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-784x588.webp 784w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-1568x1176.webp 1568w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-877x658.webp 877w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/03_how_server_side_rendering_works_-1754x1316.webp 1754w\" data-sizes=\"(max-width: 2400px) 100vw, 2400px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 2400px; --smush-placeholder-aspect-ratio: 2400\/1800;\" \/><\/figure>\n<ul class=\"wp-block-list\"><li>Der Server rendert das initiale HTML f\u00fcr jede Anfrage.<\/li><li>Der Client erh\u00e4lt eine vollst\u00e4ndig geformte HTML-Struktur, was schnellere initiale Seitenladezeiten erm\u00f6glicht.<\/li><li>Danach l\u00e4dt der Client React und Ihren Anwendungscode herunter, ein Prozess, der als &#8220;Hydratation&#8221; bezeichnet wird, der die Seite interaktiv macht.<\/li><\/ul>\n<p>Die auf dem Server gerenderte HTML-Struktur hat noch keine Funktionalit\u00e4t.&nbsp;<\/p>\n<p>React f\u00fcgt Event-Listener hinzu, richtet die interne Zustandsverwaltung ein und f\u00fcgt weitere Funktionen zum HTML hinzu, nachdem es auf Ihr Ger\u00e4t heruntergeladen wurde. Dieser Prozess des Hinzuf\u00fcgens von \u201eLeben\u201c zur Seite ist als Hydration bekannt.<\/p>\n<p>Warum funktioniert SSR so gut?<\/p>\n<ol class=\"wp-block-list\"><li><strong>Schnellere initiale Ladezeiten<\/strong>: Benutzer sehen den Inhalt fast sofort, da der Browser vollst\u00e4ndig gebildetes HTML erh\u00e4lt, wodurch die Zeit, die ben\u00f6tigt wird, damit das JavaScript geladen und ausgef\u00fchrt wird, entf\u00e4llt.<\/li><li><strong>Verbesserte SEO<\/strong>: Suchmaschinen k\u00f6nnen servergerendertes HTML leicht crawlen und indexieren. Dieser direkte Zugriff f\u00fchrt zu einer besseren Suchmaschinenoptimierung f\u00fcr Ihre Anwendung.<\/li><li><strong>Verbesserte Leistung auf langsameren Ger\u00e4ten:<\/strong> SSR verringert die Belastung auf dem Ger\u00e4t des Benutzers. Der Server \u00fcbernimmt die Arbeit, was Ihre Anwendung zug\u00e4nglicher und leistungsf\u00e4higer macht, selbst bei langsameren Verbindungen.<\/li><\/ol>\n<p>SSR hat jedoch eine Reihe zus\u00e4tzlicher Probleme verursacht, die eine noch bessere L\u00f6sung erforderten:<\/p>\n<ul class=\"wp-block-list\"><li><strong>Langsame Zeit bis zur Interaktivit\u00e4t (TTI): <\/strong>Serverseitiges Rendern und Hydratisieren verz\u00f6gern die M\u00f6glichkeit des Benutzers, die App zu sehen und mit ihr zu interagieren, bis der gesamte Prozess abgeschlossen ist.<\/li><li><strong>Serverlast: <\/strong>Der Server muss mehr Arbeit leisten, was die Antwortzeiten f\u00fcr <a href=\"https:\/\/www.dreamhost.com\/blog\/de\/wie-man-einen-webentwickler-anstellt\/\" target=\"_blank\" rel=\"noreferrer noopener\">komplexe Anwendungen<\/a> weiter verlangsamt, insbesondere wenn viele Benutzer gleichzeitig aktiv sind.<\/li><li><strong>Einrichtungskomplexit\u00e4t: <\/strong>Das Einrichten und Warten kann komplexer sein, insbesondere f\u00fcr gro\u00dfe Anwendungen.<\/li><\/ul>\n<h2 id=\"h2_finally-the-react-server-components\" class=\"wp-block-heading\">Endlich die React Server-Komponenten<\/h2>\n<p>Im Dezember 2020 stellte das React-Team die &#8220;<a href=\"https:\/\/react.dev\/blog\/2020\/12\/21\/data-fetching-with-react-server-components\" target=\"_blank\" rel=\"noreferrer noopener\">Zero-Bundle-Size React Server Components<\/a>&#8221; oder RSCs vor.<\/p>\n.embed-container { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; max-width: 100%; } .embed-container iframe, .embed-container object, .embed-container embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }<div class='embed-container'><\/div>\n<p>Dies \u00e4nderte nicht nur unsere Denkweise \u00fcber das Erstellen von React-Apps, sondern auch, wie React-Apps hinter den Kulissen funktionieren. RSCs l\u00f6sten viele Probleme, die wir mit CSR und SSR hatten.<\/p>\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p>\u201eMit RSCs wird React zu einem vollst\u00e4ndig serverseitigen Framework und einem vollst\u00e4ndig clientseitigen Framework, was wir zuvor noch nie hatten. Und das erm\u00f6glicht eine viel engere Integration zwischen dem Server- und Client-Code als jemals zuvor m\u00f6glich war.\u201c \u2014 <a href=\"https:\/\/www.reddit.com\/r\/reactjs\/comments\/1c9yuwj\/comment\/l0ov9jw\/?utm_source=share&amp;utm_medium=web3x&amp;utm_name=web3xcss&amp;utm_term=1&amp;utm_content=share_button\" target=\"_blank\" rel=\"noreferrer noopener\">ExternalBison54 auf Reddit<\/a><\/p><\/blockquote>\n<p><strong>Lassen Sie uns nun die Vorteile betrachten, die RSCs bieten:<\/strong><\/p>\n<h3 class=\"wp-block-heading\">1. Zero Bundle Size<\/h3>\n<p>RSCs werden vollst\u00e4ndig auf dem Server gerendert, wodurch die Notwendigkeit entf\u00e4llt, JavaScript-Code an den Client zu senden. Dies f\u00fchrt zu:<\/p>\n<ul class=\"wp-block-list\"><li>Deutlich kleinere JavaScript-B\u00fcndelgr\u00f6\u00dfen.<\/li><li>Schnellere Seitenladezeiten, besonders in langsameren Netzwerken.<\/li><li>Verbesserte Leistung auf weniger leistungsf\u00e4higen Ger\u00e4ten.<\/li><\/ul>\n<p>Im Gegensatz zu SSR, wo der gesamte React-Komponentenbaum zur Hydratisierung an den Client gesendet wird, bleiben serverseitige Codes bei RSCs auf dem Server. Dies f\u00fchrt zu den deutlich kleineren Client-seitigen Paketen, \u00fcber die wir gesprochen haben, wodurch Ihre Anwendungen leichter und reaktionsf\u00e4higer werden.<\/p>\n<h3 class=\"wp-block-heading\">2. Direkter Backend-Zugang<\/h3>\n<p>RSCs k\u00f6nnen direkt mit Datenbanken und Dateisystemen interagieren, ohne eine API-Schicht zu ben\u00f6tigen.<\/p>\n<p>Wie Sie im folgenden Code sehen k\u00f6nnen, wird die Variable <strong>courses<\/strong> direkt aus der Datenbank abgerufen, und die Benutzeroberfl\u00e4che gibt eine Liste der <strong>course.id<\/strong> und <strong>course.name<\/strong> aus <strong>courses.map<\/strong> aus:<\/p>\n<p><code>async function CourseList() {<br>&nbsp; const db = await connectToDatabase();<br>&nbsp; const courses = await db.query('SELECT * FROM courses');<br><br>&nbsp; return (<br>&nbsp; &nbsp; &lt;ul&gt;<br>&nbsp; &nbsp; &nbsp; {courses.map(course =&gt; (<br>&nbsp; &nbsp; &nbsp; &nbsp; &lt;li key={course.id}&gt;{course.name}&lt;\/li&gt;<br>&nbsp; &nbsp; &nbsp; ))}<br>&nbsp; &nbsp; &lt;\/ul&gt;<br>&nbsp; );<br>}<\/code><\/p>\n<p>Dies ist einfacher im Vergleich zu traditionellem SSR, bei dem Sie separate API-Routen zum Abrufen einzelner Datenteile einrichten m\u00fcssten.<\/p>\n<h3 class=\"wp-block-heading\">3. Automatische Codeaufteilung<\/h3>\n<p>Mit RSCs erhalten Sie auch eine feinere Aufteilung des Codes und eine bessere Organisation des Codes.<\/p>\n<p>React beh\u00e4lt serverseitigen Code auf dem Server und stellt sicher, dass dieser nie an den Client gesendet wird. Die Client-Komponenten werden automatisch identifiziert und zur Hydratation an den Client gesendet.<\/p>\n<p>Und das gesamte Paket wird extrem optimiert, da der Kunde nun genau das erh\u00e4lt, was f\u00fcr eine voll funktionsf\u00e4hige App ben\u00f6tigt wird.<\/p>\n<p>Andererseits ben\u00f6tigt SSR sorgf\u00e4ltiges manuelles Code-Splitting, um die Leistung f\u00fcr jede zus\u00e4tzliche Seite zu optimieren.<\/p>\n<h3 class=\"wp-block-heading\" id=\"h-4-reduced-waterfall-effect-and-streaming-rendering\">4. Reduzierter Wasserfall-Effekt und Streaming-Rendering<\/h3>\n<p>React Server-Komponenten kombinieren Streaming-Rendering und paralleles Datenabrufen. Diese leistungsstarke Kombination reduziert deutlich den \u201eWasserfalleffekt\u201c, der oft bei traditionellem serverseitigem Rendering zu sehen ist.<\/p>\n<h4 class=\"wp-block-heading\">Wasserfalleffekt<\/h4>\n<p>Der &#8220;Wasserfalleffekt&#8221; verlangsamt die Webentwicklung. Grunds\u00e4tzlich zwingt er die Operationen dazu, aufeinander zu folgen, als ob ein Wasserfall \u00fcber eine Reihe von Felsen flie\u00dfen w\u00fcrde.<\/p>\n<p>Jeder Schritt muss warten, bis der vorherige abgeschlossen ist. Dieses &#8220;Warten&#8221; ist besonders beim Abrufen von Daten sp\u00fcrbar. Ein API-Aufruf muss abgeschlossen sein, bevor der n\u00e4chste beginnen kann, was die Ladezeiten der Seite verlangsamt.<\/p>\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"547\" data-src=\"https:\/\/www.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-1024x547.webp\" alt=\"Tabelle aus dem Chrome Network Tab zeigt den Wasserfalleffekt von Netzwerkanfragen, die verschiedene API-Aufrufe und deren Timing darstellen.\" class=\"wp-image-48955 lazyload\" data-srcset=\"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-1024x547.webp 1024w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-300x160.webp 300w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-768x410.webp 768w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-1536x820.webp 1536w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-2048x1093.webp 2048w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-600x320.webp 600w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-1200x641.webp 1200w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-730x390.webp 730w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-1460x779.webp 1460w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-784x418.webp 784w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-1568x837.webp 1568w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-877x468.webp 877w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/04_waterfall_effect-1754x936.webp 1754w\" data-sizes=\"(max-width: 1024px) 100vw, 1024px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1024px; --smush-placeholder-aspect-ratio: 1024\/547;\" \/><\/figure>\n<h4 class=\"wp-block-heading\">Streaming-Rendering<\/h4>\n<p>Das Streaming-Rendering bietet eine L\u00f6sung. Anstatt darauf zu warten, dass die gesamte Seite auf dem Server gerendert wird, kann der Server Teile der Benutzeroberfl\u00e4che an den Client senden, sobald sie fertig sind.<\/p>\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"2400\" height=\"1691\" data-src=\"https:\/\/www.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering.webp\" alt=\"Diagramm zeigt Streaming-Server-Rendering: Netzwerkanfragen und JavaScript-Ausf\u00fchrungszeitlinie, einschlie\u00dflich FCP und TTI Markierungen.\" class=\"wp-image-48957 lazyload\" data-srcset=\"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering.webp 2400w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-300x211.webp 300w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-1024x721.webp 1024w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-768x541.webp 768w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-1536x1082.webp 1536w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-2048x1443.webp 2048w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-600x423.webp 600w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-1200x846.webp 1200w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-730x514.webp 730w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-1460x1029.webp 1460w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-784x552.webp 784w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-1568x1105.webp 1568w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-877x618.webp 877w, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/05_streaming_server_rendering-1754x1236.webp 1754w\" data-sizes=\"(max-width: 2400px) 100vw, 2400px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 2400px; --smush-placeholder-aspect-ratio: 2400\/1691;\" \/><\/figure>\n<p>React Server-Komponenten machen das Rendern und Abrufen von Daten viel fl\u00fcssiger. Es erstellt mehrere Serverkomponenten, die parallel arbeiten und diesen Wasserfalleffekt vermeiden.<\/p>\n<p>Der Server beginnt HTML an den Client zu senden, sobald ein Teil der Benutzeroberfl\u00e4che fertig ist.<\/p>\n<p><strong>Also, im Vergleich zum serverseitigen Rendering, RSCs:<\/strong><\/p>\n<ul class=\"wp-block-list\"><li>Erlaube jedem Bestandteil, seine Daten unabh\u00e4ngig und parallel zu holen.<\/li><li>Der Server kann einen Bestandteil streamen, sobald dessen Daten bereit sind, ohne auf das Nachholen anderer Bestandteile zu warten.<\/li><li>Benutzer sehen die Inhalte nacheinander laden, was ihre Wahrnehmung der Leistung verbessert.<\/li><\/ul>\n<h3 class=\"wp-block-heading\">5. Reibungslose Interaktion mit Client-Komponenten<\/h3>\n<p>Die Verwendung von RSCs bedeutet nicht unbedingt, dass Sie auf clientseitige Komponenten verzichten m\u00fcssen.&nbsp;<\/p>\n<p>Beide Komponenten k\u00f6nnen koexistieren und Ihnen helfen, ein gro\u00dfartiges Gesamt-App-Erlebnis zu schaffen.<\/p>\n<p>Denken Sie an eine E-Commerce-Anwendung. Bei SSR muss die gesamte App serverseitig gerendert werden.<\/p>\n<p>In RSCs k\u00f6nnen Sie jedoch ausw\u00e4hlen, welche Komponenten auf dem Server und welche auf der Clientseite gerendert werden sollen.<\/p>\n<p>Zum Beispiel k\u00f6nnten Sie Serverkomponenten verwenden, um Produktdaten abzurufen und die anf\u00e4ngliche Produktlisten-Seite zu rendern.<\/p>\n<p>Dann k\u00f6nnen Client-Komponenten Benutzerinteraktionen wie das Hinzuf\u00fcgen von Artikeln zu einem Einkaufswagen oder das Verwalten von Produktbewertungen verarbeiten.<\/p>\n<h2 id=\"h2_should-you-add-rsc-implementation-on-your-roadmap\" class=\"wp-block-heading\">Sollten Sie die RSC-Implementierung in Ihre Roadmap aufnehmen?<\/h2>\n<p>Unser Urteil? RSCs bringen <em>viel<\/em> Wert f\u00fcr die React-Entwicklung.<\/p>\n<p>Sie l\u00f6sen einige der dringendsten Probleme mit den SSR- und CSR-Ans\u00e4tzen: Leistung, Datenabruf und Entwicklererfahrung. <a href=\"https:\/\/www.dreamhost.com\/blog\/de\/beste-online-ressourcen-zum-lernen-von-code\/\" target=\"_blank\" rel=\"noreferrer noopener\">F\u00fcr Entwickler, die gerade erst mit dem Programmieren beginnen<\/a>, hat dies das Leben erleichtert.<\/p>\n<p>Sollten Sie jetzt die Implementierung von RSC in Ihre Roadmap aufnehmen? Wir m\u00fcssen uns mit dem gef\u00fcrchteten \u2014 <em>es kommt darauf an<\/em> auseinandersetzen.<\/p>\n<p>Ihre App funktioniert m\u00f6glicherweise einwandfrei ohne RSCs. Und in diesem Fall k\u00f6nnte das Hinzuf\u00fcgen einer weiteren Abstraktionsebene wenig bewirken. Wenn Sie jedoch planen zu skalieren und denken, dass RSCs das Benutzererlebnis f\u00fcr Ihre App verbessern k\u00f6nnen, versuchen Sie, kleine \u00c4nderungen vorzunehmen und von dort aus zu skalieren.<\/p>\n<p>Und wenn Sie einen leistungsstarken Server ben\u00f6tigen, um RSCs zu testen, starten Sie einen <a href=\"https:\/\/www.dreamhost.com\/de\/hosting\/vps\/\" target=\"_blank\" rel=\"noreferrer noopener\">DreamHost VPS<\/a>.<\/p>\n<p>DreamHost bietet einen vollst\u00e4ndig verwalteten VPS-Service, bei dem Sie selbst Ihre anspruchsvollsten Apps bereitstellen k\u00f6nnen, ohne sich um die Wartung des Servers k\u00fcmmern zu m\u00fcssen.<\/p>\n\n\n<div class=\"article-cta-shared article-cta-small article-cta--product\">\n\t<div class=\"tr-img-wrap-outer jsLoading\"><img decoding=\"async\" class=\"js-img-lazy \" src=\"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/themes\/blog2018\/assets\/img\/lazy-loading-transparent.webp\" data-srcset=\"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/03\/product-cta-vps-hosting-877x586.webp 1x, https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/03\/product-cta-vps-hosting.webp 2x\"  alt=\"VPS Hosting\" \/><\/div>\n\n\t<a href='https:\/\/www.dreamhost.com\/hosting\/vps\/' class='link-top' target='_blank' rel='noopener noreferrer'>\n\t\t<span>VPS Hosting<\/span>\n\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 384 512\" width=\"15\"><path d=\"M342.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L274.7 256 105.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z\"\/><\/svg>\n\t<\/a>\n\n\t<div class=\"content-btm\">\n\t\t<h2 class=\"h2--md\">\n\t\t\tWhen You Expect Performance Get DreamHost VPS\n\t\t<\/h2>\n\t\t<p class=\"p--md\">\n\t\t\tBig or small, website or application &#8211; we have a VPS configuration for you.\n\t\t<\/p>\n\n\t\t        <a\n            href=\"https:\/\/www.dreamhost.com\/hosting\/vps\/\"\n                        class=\"btn btn--white-outline btn--sm btn--round\"\n                                    target=\"_blank\"\n            rel=\"noopener noreferrer\"\n            >\n                            See More                    <\/a>\n\n\t<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>M\u00f6chten Sie die Grundlagen von React Server Components verstehen? Unser Leitfaden bringt Sie auf den neuesten Stand, wann Sie sie in Ihre Roadmap aufnehmen sollten (oder nicht).<\/p>\n","protected":false},"author":1058,"featured_media":48941,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_yoast_wpseo_metadesc":"","toc_headlines":"[[\"h-what-are-react-server-components\",\"Was sind React Server-Komponenten?\"],[\"h2_traditional-react-client-side-rendering-csr\",\"Traditionelles React: Clientseitiges Rendering (CSR)\"],[\"h2_the-next-iteration-server-side-rendering-ssr\",\"Die n\u00e4chste Iteration: Serverseitiges Rendering (SSR)\"],[\"h2_finally-the-react-server-components\",\"Endlich die React Server-Komponenten\"],[\"h2_should-you-add-rsc-implementation-on-your-roadmap\",\"Sollten Sie die RSC-Implementierung in Ihre Roadmap aufnehmen?\"]]","hide_toc":false,"footnotes":""},"categories":[14491],"tags":[],"class_list":["post-54958","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technischer-austausch-de"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.3 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>React Serverkomponenten: Die Zukunft der React-Entwicklung - DreamHost Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"React Serverkomponenten: Die Zukunft der React-Entwicklung\" \/>\n<meta property=\"og:description\" content=\"M\u00f6chten Sie die Grundlagen von React Server Components verstehen? Unser Leitfaden bringt Sie auf den neuesten Stand, wann Sie sie in Ihre Roadmap aufnehmen sollten (oder nicht).\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/\" \/>\n<meta property=\"og:site_name\" content=\"DreamHost Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DreamHost\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-08-28T14:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-01-07T14:06:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/1460x1095_blog_hero_react_server_components.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"2190\" \/>\n\t<meta property=\"og:image:height\" content=\"1643\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Ian Hernandez\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dreamhost\" \/>\n<meta name=\"twitter:site\" content=\"@dreamhost\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ian Hernandez\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"React Serverkomponenten: Die Zukunft der React-Entwicklung - DreamHost Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/","og_locale":"en_US","og_type":"article","og_title":"React Serverkomponenten: Die Zukunft der React-Entwicklung","og_description":"M\u00f6chten Sie die Grundlagen von React Server Components verstehen? Unser Leitfaden bringt Sie auf den neuesten Stand, wann Sie sie in Ihre Roadmap aufnehmen sollten (oder nicht).","og_url":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/","og_site_name":"DreamHost Blog","article_publisher":"https:\/\/www.facebook.com\/DreamHost\/","article_published_time":"2024-08-28T14:00:00+00:00","article_modified_time":"2025-01-07T14:06:19+00:00","og_image":[{"width":2190,"height":1643,"url":"https:\/\/www.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/1460x1095_blog_hero_react_server_components.webp","type":"image\/webp"}],"author":"Ian Hernandez","twitter_card":"summary_large_image","twitter_creator":"@dreamhost","twitter_site":"@dreamhost","twitter_misc":{"Written by":"Ian Hernandez","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/#article","isPartOf":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/"},"author":{"name":"Ian Hernandez","@id":"https:\/\/www-dev.dreamhost.com\/blog\/#\/schema\/person\/220faf2464d5ae08e41cf5f3b28fdc96"},"headline":"React Serverkomponenten: Die Zukunft der React-Entwicklung","datePublished":"2024-08-28T14:00:00+00:00","dateModified":"2025-01-07T14:06:19+00:00","mainEntityOfPage":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/"},"wordCount":1759,"publisher":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/#organization"},"image":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/#primaryimage"},"thumbnailUrl":"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/1460x1095_blog_hero_react_server_components.webp","articleSection":["Technischer Austausch"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/","url":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/","name":"React Serverkomponenten: Die Zukunft der React-Entwicklung - DreamHost Blog","isPartOf":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/#primaryimage"},"image":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/#primaryimage"},"thumbnailUrl":"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/1460x1095_blog_hero_react_server_components.webp","datePublished":"2024-08-28T14:00:00+00:00","dateModified":"2025-01-07T14:06:19+00:00","breadcrumb":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/#primaryimage","url":"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/1460x1095_blog_hero_react_server_components.webp","contentUrl":"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2024\/08\/1460x1095_blog_hero_react_server_components.webp","width":2190,"height":1643,"caption":"React Server Components: The Future of React Development"},{"@type":"BreadcrumbList","@id":"https:\/\/www-dev.dreamhost.com\/blog\/de\/react-server-komponenten\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dhblog.dream.press\/blog\/"},{"@type":"ListItem","position":2,"name":"React Serverkomponenten: Die Zukunft der React-Entwicklung"}]},{"@type":"WebSite","@id":"https:\/\/www-dev.dreamhost.com\/blog\/#website","url":"https:\/\/www-dev.dreamhost.com\/blog\/","name":"DreamHost Blog","description":"","publisher":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www-dev.dreamhost.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www-dev.dreamhost.com\/blog\/#organization","name":"DreamHost","url":"https:\/\/www-dev.dreamhost.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www-dev.dreamhost.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/dhblog.dream.press\/blog\/wp-content\/uploads\/2019\/01\/dh_logo-blue-2.png","contentUrl":"https:\/\/dhblog.dream.press\/blog\/wp-content\/uploads\/2019\/01\/dh_logo-blue-2.png","width":1200,"height":168,"caption":"DreamHost"},"image":{"@id":"https:\/\/www-dev.dreamhost.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DreamHost\/","https:\/\/x.com\/dreamhost","https:\/\/www.instagram.com\/dreamhost\/","https:\/\/www.linkedin.com\/company\/dreamhost\/","https:\/\/www.youtube.com\/user\/dreamhostusa"]},{"@type":"Person","@id":"https:\/\/www-dev.dreamhost.com\/blog\/#\/schema\/person\/220faf2464d5ae08e41cf5f3b28fdc96","name":"Ian Hernandez","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2022\/04\/ian-hernandez-dreamhost-150x150.png","url":"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2022\/04\/ian-hernandez-dreamhost-150x150.png","contentUrl":"https:\/\/www-dev.dreamhost.com\/blog\/wp-content\/uploads\/2022\/04\/ian-hernandez-dreamhost-150x150.png","caption":"Ian Hernandez"},"description":"Ian is a Product Designer based in Los Angeles, California. He is responsible for driving brand and product design at DreamHost, developing and maintaining our internal design system, and writing frontend code when he can. In his free time, he enjoys walking his dog, learning history, and discovering new music online and irl. Connect with him on LinkedIn: https:\/\/www.linkedin.com\/in\/ianhernandez23\/","url":"https:\/\/www-dev.dreamhost.com\/blog\/author\/ianh\/"}]}},"lang":"de","translations":{"de":54958,"en":48940,"es":48920,"ru":50735,"pt":54931,"uk":54946,"pl":54981,"it":68387,"fr":70369,"nl":70399},"pll_sync_post":[],"_links":{"self":[{"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/posts\/54958","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/users\/1058"}],"replies":[{"embeddable":true,"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/comments?post=54958"}],"version-history":[{"count":3,"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/posts\/54958\/revisions"}],"predecessor-version":[{"id":59796,"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/posts\/54958\/revisions\/59796"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/media\/48941"}],"wp:attachment":[{"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/media?parent=54958"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/categories?post=54958"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www-dev.dreamhost.com\/blog\/wp-json\/wp\/v2\/tags?post=54958"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}