Aller au contenu principal

31-1 Configuration et langue par défaut

Dans un premier temps, il est nécessaire de configurer la langue par défaut de l'application. Cela se fait via l'utilisation de la librairie nestjs-i18n et de sa configuration.

  1. Installer nestjs-i18n

    npm install nestjs-i18n
  2. Créer un dossier src/i18n qui contiendra le ou les fichiers de traduction

  3. Sous le dossier src/i18n, créez un dossier fr. Ce dernier contiendra les fichiers de langue pour le français.

  4. Dans le nouveau dossier (src/i18n/fr), ajoutez un fichier json nommé validation.json. Ce dernier contiendra les messages d'erreur traduits. Pour l'instant, assurez-vous que le fichier contient les accolades pour en faire un fichier json valide.

    src/i18n/fr/validation.json
    {

    }
  5. Dans le fichier nest-cli.json configurez les options de compilation pour que le contenu du dossier i18n soit copié dans le dossier dist lors de la compilation.

    nest-cli.json
    "compilerOptions": {
    "deleteOutDir": true,
    "assets": [
    { "include": "i18n/**/*", "watchAssets": true }
    ]
    }
  6. Configurer nestjs-i18n dans app.module.

    src/app.module.ts
    @Module({
    imports: [
    I18nModule.forRoot({
    fallbackLanguage: 'fr',
    loaderOptions: {
    path: path.join(__dirname, '/i18n/'),
    watch: true,
    },
    resolvers: [
    { use: QueryResolver, options: ['lang'] },
    AcceptLanguageResolver,
    new HeaderResolver(['x-lang']),
    ],
    }),
    ProjetsModule,
    IssuesModule,
    ],
    //...
    info

    Remarquez fr pour fallbackLanguage. On indique avec cette propriété que la langue par défaut est le français.