Bonjours,

Je utiltize i18n. C'est un outil (middleware) pour realizer des site Web multilingue.
J'ai installé i18n et ja peux changer entre different langues. La base du texte multilingue est JSON.

Maintenant, j'ai des problemes avec l'integration du vue-router.
Je veux realizer quelque chose comme ca:

domain/fr/home
domain/fr/about

domain/en/home
domain/en/about


Selon un tutoriel, j'ai realizer vue-router comme ca:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
import { createRouter, createWebHistory } from "vue-router";
 
import Home from "./views/Home.vue";
import About from "./views/About.vue";
import Projects from "./views/Projects.vue";
import Blog from "./views/Blog.vue";
import Design from "./views/Design.vue";
import Contact from "./views/Contact.vue";
 
const router = createRouter({
  history: createWebHistory(),
  routes: [
    {
      path: "/:lang",
      component: {
        render(c) {
          return c("router-view");
        },
      },
      children: [
        { path: "/", redirect: "home" },
        { path: "home", name: "home", component: Home },
 
        { path: "projects", name: "Projects", component: Projects },
        { path: "blog", name: "Blog", component: Blog },
        { path: "design", name: "Design", component: Design },
        { path: "about", name: "About", component: About },
        { path: "contact", name: "Projects", component: Contact },
      ],
    },
  ],
});
 
export default router;
En principe, le composant de path: "/: lang" n'existe pas. (Le composant es toujours obligatoire!!) C'est pourquoi j'utilise la fonction render().
Cependant, cela n'est pas reconnu par le système. Où est l'erreur? Merci beaucoup.

michael_cassio