2017-09-25 3 views
0

J'ai un peu de mal à déployer une application React sur ma page utilisateur Github. J'ai lu la documentation create-react-app et compris comment déployer sur une page de projet en utilisant "yarn run deploy", mais ce n'est pas ce que j'essaie de faire.Déploiement de l'application React sur la page utilisateur Github

Je crois que le problème est qu'une page user recherche index.html dans le répertoire racine du repo, mais "npm run build" génère ce fichier dans un répertoire de construction séparé. Comme les pages utilisateur doivent être construites à partir de la branche master, je cherche un moyen de générer ces fichiers de construction directement à la racine du repo. Ma première pensée était de modifier le script "build.js", mais je ne suis pas vraiment sûr de ce que je regarde quand je l'ouvre.

Pour ce que ça vaut la peine, l'application fonctionne très bien quand je fais glisser le contenu de mon répertoire de construction directement dans le répertoire racine avant de pousser à Github, et peut être consulté que je voudrais au nom d'utilisateur .githubo.io . Cependant, cela semble plutôt bâclé et fastidieux.

J'ai essayé d'installer « page d'accueil » dans package.json à « nom d'utilisateur .githubo.io/», mais le script génère encore Déployez une branche gh-pages séparées dont l'application doit être construit (qui , encore une fois, n'est pas autorisé pour une page utilisateur).

Appréciez l'aide à l'avance! Faites-moi savoir si je peux clarifier.

EDIT:

https://tyler-coleman.github.io/

https://github.com/tyler-coleman/tyler-coleman.github.io

Y compris des liens vers le site actuel et repo si vous tous ont une meilleure idée de ce dont je parle. Pour l'instant, j'ai contourné le problème en incluant "cp -a build /." dans mon script de déploiement dans package.json. Je pense juste qu'il est étrange que la documentation inclut des directions pour le déploiement à une page de projet, mais pas à une page d'utilisateur.

+0

Pour autant que je sache, les pages GitHub ne prennent en charge que l'hébergement de sites statiques. –

+0

D'après les regards de https://tyler-coleman.github.io/, il semble que vous l'avez eu à travailler? J'ai le même problème, alors je serais curieux de savoir comment vous avez résolu le problème. – zigzag

+0

@zigzag Désolé pour le ehm, réponse vraiment retardée, mais si vous n'avez toujours pas compris quelque chose - voici ce que j'ai fait: Trouvez et modifiez votre script "deploy" dans package.json pour copier tous les fichiers de votre construire le répertoire dans votre répertoire racine. C'est bête, mais ça fonctionne. La mienne ressemble à ceci: "scripts": { "predeploy": "exécution npm run", "deploy": "cp -a build /..", "début": "node scripts/start.js ", " build ":" node scripts/build.js --histoire-api-fallback ", " test ":" Nœuds scripts/test.js --env = jsdom " }, Curieux de savoir si vous avez trouvé une solution plus élégante. – Tyler

Répondre

0

Cela fonctionne très bien parce que votre ordinateur localhost exécute un gestionnaire de paquets de nœuds et de nœuds - les pages github n'exécutent pas node.js, ce qui correspond à ce que votre instance doit faire pour réagir. Si vous voulez réagir, et nœud, je recommande de déchiffrer une linux linode box pour 5 $ par mois et installer ce dont vous avez besoin. Pour un montant supplémentaire de 12 $ par an, vous pouvez enregistrer votre propre nom de domaine.

+0

Je n'utilise pas node.js, autant que je sache.Juste le gestionnaire de paquets. Cela fonctionne bien hébergé sur Github Pages, vérifiez-le: https://tyler-coleman.github.io/. Je suis en quelque sorte en train de tricher en incluant "cp/build /." dans le script "build" de package.json pour copier mes fichiers de construction dans mon répertoire racine, mais quelque chose à ce sujet ne va pas. Il doit y avoir un moyen plus professionnel de déployer l'application sur ma page utilisateur sans avoir à copier les fichiers de construction, puis à repo. Désolé si je n'ai pas de sens, je ne suis pas familier avec les applications React et c'est une tentative d'apprentissage. Merci! – Tyler

+0

Honnêtement, je suis un peu un noob de réagir moi-même, mais autant que je sache, il fonctionne sur le nœud. –