Razzle: Comment appliquer Razzle à un projet existant ?

Créé le 24 mai 2018  ·  11Commentaires  ·  Source: jaredpalmer/razzle

Désolé si c'était une question inappropriée,
Mon projet est créé par CRA et utilise Express.js comme backend.
Il semble que la seule façon de commencer est de créer une nouvelle application Razzle selon la documentation ?
Que dois-je faire si je veux juste l'appliquer sur mon projet en cours ?

Je ne suis pas sûr que ce soit même possible... à moins que je ne réécrive notre application

stale

Commentaire le plus utile

J'ai la même question. J'ai créé une application React personnalisée. Comment puis-je y intégrer Razzle ?

Tous les 11 commentaires

Je traverse cela maintenant moi-même.
J'ai eu la configuration du projet CRA de la manière suivante :

/projets/mon-application-arc
sous ce qui précède, j'ai alors src , node_modules et tout le reste créé par CRA.

Je ne pouvais pas trouver un moyen d'y mélanger Razzle (et au début, je pensais que Razzle remplacerait CRA et pourrait en fait servir Client-Render (port 3001) et Server-Render (port 3000) à partir du même projet. Mais cela n'a pas fonctionné non plus (j'ai posté une question à ce sujet plus tôt, ici, mais aucune réponse).
De plus, j'utilise razzle latest (alpha) avec webpack4, alors que CRA est toujours webpack (3) bien que certains commits initiaux pour webpack 4 aient maintenant atterri sur leur branche principale...

Donc ce que j'ai fait pour l'instant, c'est ce qui suit

/projects/my-app/app.src
/projects/my-app/app-cra qui contient node_modules (avec ./src/ contenant App.js App.css généré par cra)
/projects/my-app/app-ssr qui contient node_modules (avec ./src/ contenant des éléments générés par razzle)

alors app-cra/src contient également un lien symbolique vers ../../app.src
et app-ssr/src contient également un lien symbolique vers ../../app.src

de cette façon, je peux partager la même source mais des scripts de point d'entrée différents et différents node_modules entre razzle et cra.

Malheureusement, Razzle ne transpliera/compilera pas votre JS directement à partir des répertoires liés symboliquement (cRA non plus d'ailleurs).

J'utilise donc rewire pour CRA et razle-config.js pour demander aux deux de regarder mes fichiers JS dans les répertoires liés symboliquement.

si vous voulez choisir razle-config.js que j'ai maintenant, vous pouvez le voir ici sur stack-overflow (car je rencontre un problème avec l'une des bibliothèques que j'essaie d'utiliser pour SSR .. donc chercher de l'aide sur stack-overflow pour ça).

C'est un peu compliqué parce que je fais plus que du razzle par défaut (react-native-web, react-vector-icons, sass, répertoires à liens symboliques..., transpliant certains modules node_modules sélectionnés, car leurs auteurs ont choisi de ne pas les livrer pour le web- déploiements, etc.)

https://stackoverflow.com/questions/50514135/error-in-react-native-vector-icons-when-using-for-web-server-side-rendering

Hum, merci pour votre réponse. Je ne comprends toujours pas comment le faire

@ifndefdeadmau5 gardez votre application ARC.

a) créez une autre nouvelle application avec create-razzle-app, au même niveau de dossier dans votre application CRA.

b) déplacer les fichiers que vous souhaitez partager entre les 2 applications, dans un dossier commun.

c) Créez des liens symboliques à partir du répertoire src des deux applications, pointant vers le dossier que vous avez créé en b).

d) utilisez razzle-config.js et recâblez (pour l'application CRA) pour demander au webpack de transplier les fichiers JS dans les liens symboliques créés à l'étape c).

Je ne pouvais pas trouver une autre façon de faire oui, donc d'autres pourraient avoir de meilleures réponses ...

@jaredpalmer Bonjour, pourriez-vous fournir une solution sur la façon de migrer de l'ARC vers l'application de rendu du serveur Razzle et mettre à jour la documentation associée dans le fichier Lisez-moi ? Merci d'avance.

Hola ! Voici donc l'affaire, entre l'open source et mon travail et ma vie quotidienne et ainsi de suite, j'ai beaucoup à gérer, alors j'utilise un bot GitHub pour automatiser quelques choses ici et là. Ce bot GitHub particulier va le marquer comme obsolète car il n'a pas eu d'activité récente depuis un certain temps. Il sera fermé s'il n'y a plus d'activité dans quelques jours. Ne prenez pas cela personnellement - au sérieux - il s'agit d'une action entièrement automatisée. S'il s'agit d'une erreur, faites simplement un commentaire, envoyez-moi un DM, envoyez un pigeon voyageur ou un signal de fumée.

ProBot l'a automatiquement fermé en raison de son inactivité. Criez s'il s'agit d'une erreur, et nous le rouvrirons.

J'ai la même question. J'ai créé une application React personnalisée. Comment puis-je y intégrer Razzle ?

Une mise à jour pour ceci?

J'ai la même question, il devrait y avoir des tutoriels à ce sujet.

des progrès avec ça ?

J'ai aussi des problèmes avec ça. J'avais une application CRA parfaitement fonctionnelle et j'ai essayé de migrer vers Razzle en renommant index.tsx en client.tsx et en ajoutant un serveur à index.ts , mais quand j'exécute razzle start il semble qu'il essaie de regrouper le code du serveur avec le client et génère des erreurs telles que

These dependencies were not found:

* fs in ../.yarn/$$virtual/babel-plugin-styled-components-virtual-cfb9253662/0/cache/babel-plugin-styled-components-npm-1.11.1-9e78975a1c-4b545bed54.zip/node_modules/babel-plugin-styled-components/lib/visitors/displayNameAndId.js, ../.yarn/cache/cosmiconfig-npm-6.0.0-cb7d64a2b9-bbd6bbaefe.zip/node_modules/cosmiconfig/dist/readFile.js and 4 others
* module in ../.yarn/cache/resolve-patch-af4189aea7-9e62d2803a.zip/node_modules/resolve/lib/normalize-options.js, ../.yarn/cache/resolve-from-npm-4.0.0-f758ec21bf-87a4357c0c.zip/node_modules/resolve-from/index.js

Quelqu'un a-t-il eu la même chose ou a-t-il une idée de comment résoudre ce problème?

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

Jayphen picture Jayphen  ·  4Commentaires

howardya picture howardya  ·  5Commentaires

jcblw picture jcblw  ·  4Commentaires

JacopKane picture JacopKane  ·  3Commentaires

krazyjakee picture krazyjakee  ·  3Commentaires