Personnalisation du processus de génération
Vous pouvez personnaliser le processus de génération pour renommer une application, ajouter un nouveau nom d'application ou générer un groupement d'application sans nom de base de routage React.
Renommer une application pour une génération
Pour renommer une application de sorte que l'application soit groupée dans un autre nom lorsqu'elle est générée, vous devez effectuer les mises à jour suivantes à l'aide du nouveau nom de l'application.
- Dans le fichier tools/scripts/buildConstant.js, remplacez les constantes ALL_APP et DEFAULT_APP par le nouveau nom de l'application.
- Dans le fichier .env, remplacez REACT_APP_STORENAME par le nouveau nom de l'application. Cette variable n'est utilisée que si la variable REACT_APP_STORENAME n'est pas définie dans ou dans les fichiers .env.development ou .env.production.
Pour plus d'informations, voir Ajout de variables d'environnement de développement dans .env pour l'application Créer React.
- Dans le dossier assets, renommez ou copiez le dossier emerald ou sapphire vers le nouveau nom de l'application. Remplacez les actifs statiques du dossier, par exemple les images, par de nouveaux actifs spécifiques à l'application.Note: Pour éviter tout conflit ou problème potentiel avec les différents systèmes d'exploitation, utilisez un nom de dossier en minuscules.
- Remplacez le thème CSS dans le dossier src/themes.
- Renommez ou créer les fichiers appa-theme.js et appb-theme.js.
- Editez et modifiez le fichier index.js en ajoutant les commandes suivantes :
import { emeraldTheme as Emerald, sapphireTheme as Sapphire, } from "@hcl-commerce-store-sdk/react-component"; + import AppA from "./appa-theme"; + import AppB from "./appb-theme"; + const themes = { AppA, AppB }; const CurrentTheme = themes[process.env.REACT_APP_STORENAME]; export { CurrentTheme };
- Exécutez
npm run buildounpm start.
Ajout d'un nouveau nom d'application
- Dans le fichier tools/scripts/buildConstant.js, ajoutez le nouveau nom de l'application aux constantes ALL_APP et DEFAULT_APP.
- Dans le dossier assets, ajoutez un nouveau sous-dossier avec le nouveau nom de l'application.Note: Pour éviter tout conflit ou problème potentiel avec les différents systèmes d'exploitation, utilisez un nom de dossier en minuscules.
- Dans le dossier src/themes, créez les fichiers de thème CSS appa-theme.js et appb-theme.js.
- Editez et modifiez le fichier index.js en ajoutant les commandes suivantes :
import { emeraldTheme as Emerald, sapphireTheme as Sapphire, } from "@hcl-commerce-store-sdk/react-component"; - const themes = { Emerald, Sapphire }; + import AppA from "./appa-theme"; + import AppB from "./appb-theme"; + const themes = { AppA, AppB, Emerald, Sapphire }; const CurrentTheme = themes[process.env.REACT_APP_STORENAME]; export { CurrentTheme }; - Exécutez
npm run buildounpm start.
Activation d'une clé d'API Google
- API de directions
- API de matrice de distance
- API JavaScript Maps
- API Lieux
- Procédez comme suit dans les liens suivants :
- Utilisez la variable d'environnement
REACT_APP_GOOGLE_MAP_API_KEY=votre clé d'API Google pour ajouter la clé au fichier .env de magasin. - Générez et déployez le groupement de magasin.
Générer un groupement d'applications sans le nom de base de routage React
basename joue un rôle similaire à la racine de contexte dans le monde du routeur React.
Dans les cas où le basename n'est pas applicable, nous pouvons supprimer le nom de base de l'application.
Pour supprimer le nom de base, dans le dossier assets/template, supprimez les entrées REACT_APP_ROUTER_BASENAME entrées dans les fichiers de modèle .env.
PORT={{port}}
HTTPS={{https}}
REACT_APP_STORENAME={{appName}}
- REACT_APP_ROUTER_BASENAME={{appName}}
+ REACT_APP_ROUTER_BASENAME=basename est un concept de routeur React. Pour plus d'informations sur basename, voir http://reactrouter.com/web/api/BrowserRouter.
Application à partir de la racine de document d'un serveur Web
REACT_APP_STORENAME={{appName}}
REACT_APP_ROUTER_BASENAME={{appName}}
- PUBLIC_URL=/{{appName}}
Réécriture du serveur Web pour l'application mono-page
Reportez-vous à Création d'applications React Service d'applications avec le routage côté client pour différentes options de déploiement et la configuration du serveur Web.