Server-rendering Reagieren js auf einer statischen website
Habe ich erforscht, reagieren in letzter Zeit viel, und ich sehe, wie können Sie so etwas wie Knoten-zu-server-render-code. Ich bin wirklich daran interessiert, die Verwendung von statischen Seiten für die Gründe der Schnelligkeit, aber ich bin mir nicht sicher, ob es möglich ist, zu erbringen reagieren-Komponenten bei der Verwendung von statischem html.
Könnte ich so etwas wie nginx auf trigger reagieren Rendern? Oder brauche ich mehr zu benutzen und Dinge wie Knoten, rails oder sinatra? Sorry, wenn dies eine fehlgeleitete Frage, die ich nicht haben ein starkes Gefühl von client-server Interaktionen.
- Versuchen Sie dies: npmjs.org/package/react-server-example
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wir exportieren eine Funktion, die Ihnen erlaubt, zu machen, um statische HTML -
ReactDOMServer.renderComponentToStaticMarkup
(docs).Müssen Sie ausgeführte Knoten zum Aufruf dieser Funktion. Alternativ können Sie auch verwenden, dass die Funktion während der Entwicklung Ihrer Website und rufen Sie erzeugen eine statische HTML-Datei, die Sie auf die Festplatte schreibt. Sie müssen noch Knoten zum Aufruf der Funktion, aber Sie würden nicht brauchen, Knoten in der Produktion. Sie können dann diese Datei verwenden, aber Sie wollen (zB, könnte verwendet werden, mit GitHub pages, S3, oder eigentlich überall, da es nur HTML).
Wenn Sie planen, Ihr Reagieren web-app in CDN (z.B. GitHub-Pages, Amazon S3 /CloudFront, FB), dann möchten Sie vielleicht, um die vor-Rendern-alle Ihre reagieren-basierten Seiten als statische HTML-Dateien während der Kompilierung Schritt. Hier ist ein Beispiel:
https://github.com/koistya/react-static-boilerplate
(disclaimer: ich bin der Autor)
Als nächsten Schritt, können Sie ein Travis CI automatisierter build-Konfiguration für diese Website, so dass, sobald die neue version der source-Dateien geschoben wird, um das GitHub-repository, Travis CI wird das Projekt erstellen und schieben Sie es auf GitHub-Pages (oder Amazon S3, FB).
Ja, mit server-rendering können Sie erzeugen eine statische version der Seite, und servieren Sie es wie eine statische website.
Vom https://github.com/reactjs/react-page