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
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.)
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?
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 ?